display:flex
CSS property · 17 supported, 2 partial, 2 unsupported across 21 clients
Client Support
| Client | Category | Engine | Support |
|---|---|---|---|
| Gmail | webmail | Gmail Web | Supported |
| Gmail Android | mobile | Gmail Mobile | Partial |
| Gmail iOS | mobile | Gmail Mobile | Partial |
| Outlook 365 | webmail | Outlook Web | Supported |
| Outlook (New) | desktop | Outlook Web | Unsupported |
| Outlook Classic | desktop | Microsoft Word | Unsupported |
| Outlook iOS | mobile | Outlook Mobile | Supported |
| Outlook Android | mobile | Outlook Mobile | Supported |
| Outlook for Mac | desktop | WebKit | Supported |
| Apple Mail | desktop | WebKit | Supported |
| Apple Mail iOS | mobile | WebKit | Supported |
| Yahoo Mail | webmail | Yahoo | Supported |
| Yahoo Mail Android | mobile | Yahoo | Supported |
| Yahoo Mail iOS | mobile | Yahoo | Supported |
| Samsung Mail | mobile | Samsung | Supported |
| Thunderbird | desktop | Gecko | Supported |
| HEY Mail | webmail | WebKit | Supported |
| Proton Mail | webmail | Proton | Supported |
| AOL Mail | webmail | AOL | Supported |
| Fastmail | webmail | Fastmail | Supported |
| Superhuman | desktop | Blink | Supported |
Client-by-client behaviour for display:flex
Fully supports display:flex (17): Gmail, Outlook 365, Outlook iOS, Outlook Android, Outlook for Mac, Apple Mail, Apple Mail iOS, Yahoo Mail, Yahoo Mail Android, Yahoo Mail iOS, Samsung Mail, Thunderbird, HEY Mail, Proton Mail, AOL Mail, Fastmail, Superhuman.
Partial support (2): Gmail Android, Gmail iOS. Expect rendering quirks unique to each engine. Partial support typically means a subset of values, an ignored shorthand, or sanitizer-specific rewrites.
No support (2): Outlook (New), Outlook Classic. Plan fallbacks for these clients before relying on display:flex in production sends.
Fixes & Workarounds
Outlook (New)
UnsupportedUse <table> layouts for email client compatibility.
Outlook Classic
UnsupportedUse <table> layouts with <!--[if mso]> conditional comments for Outlook's Word engine.
Before
<div style="display: flex; gap: 16px;">
<div style="flex: 1;">Column 1</div>
<div style="flex: 1;">Column 2</div>
</div>After
<!--[if mso]>
<table role="presentation" width="100%" cellpadding="0"
cellspacing="0" border="0"><tr>
<td width="50%" valign="top">Column 1</td>
<td width="50%" valign="top">Column 2</td>
</tr></table>
<![endif]-->
<!--[if !mso]><!-->
<div style="display: flex; gap: 16px;">
<div style="flex: 1;">Column 1</div>
<div style="flex: 1;">Column 2</div>
</div>
<!--<![endif]-->Use table layout as fallback for flexbox in Outlook
Gmail Android
PartialUse <table> layouts for email client compatibility.
Gmail iOS
PartialUse <table> layouts for email client compatibility.
Production guidance for display:flex
display:flex is a CSS property. Across the email client matrix, 17 of 15 tracked clients support it fully, 2 only partially, and 2 not at all. The clients most likely to require a workaround for this feature are Outlook Classic. Each of them needs a tailored fallback. See the per-client examples above for the specific code fix Emailens recommends.
When in doubt, ship a baseline that renders without display:flex and treat it as progressive enhancement on clients where support is verified. Emailens automatically detects cross-client divergence on this feature when you preview an email, so you can see exactly which template paths break before a campaign goes out.
Related Features
Test your email across all 21 clients
Preview rendering, catch CSS issues, and get actionable fixes. Free.
Try Emailens FreeSupport data last updated Apr 27, 2026 · synced from caniemail.com via @emailens/engine.