Skip to main content
CSS Properties

display:grid

CSS property · 17 supported, 2 partial, 2 unsupported across 21 clients

Client Support

ClientCategoryEngineSupport
GmailwebmailGmail WebSupported
Gmail AndroidmobileGmail MobilePartial
Gmail iOSmobileGmail MobilePartial
Outlook 365webmailOutlook WebSupported
Outlook (New)desktopOutlook WebUnsupported
Outlook ClassicdesktopMicrosoft WordUnsupported
Outlook iOSmobileOutlook MobileSupported
Outlook AndroidmobileOutlook MobileSupported
Outlook for MacdesktopWebKitSupported
Apple MaildesktopWebKitSupported
Apple Mail iOSmobileWebKitSupported
Yahoo MailwebmailYahooSupported
Yahoo Mail AndroidmobileYahooSupported
Yahoo Mail iOSmobileYahooSupported
Samsung MailmobileSamsungSupported
ThunderbirddesktopGeckoSupported
HEY MailwebmailWebKitSupported
Proton MailwebmailProtonSupported
AOL MailwebmailAOLSupported
FastmailwebmailFastmailSupported
SuperhumandesktopBlinkSupported

Client-by-client behaviour for display:grid

Fully supports display:grid (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:grid in production sends.

Fixes & Workarounds

Outlook (New)

Unsupported

Replace CSS Grid with table layout for email compatibility.

Before

<div style="display: grid;
            grid-template-columns: 1fr 1fr; gap: 16px;">
  <div>Item 1</div>
  <div>Item 2</div>
</div>

After

<table role="presentation" width="100%" cellpadding="0"
  cellspacing="0" border="0">
  <tr>
    <td width="50%" style="padding: 8px;" valign="top">
      Item 1
    </td>
    <td width="50%" style="padding: 8px;" valign="top">
      Item 2
    </td>
  </tr>
</table>

Replace CSS Grid with table layout for email compatibility

Outlook Classic

Unsupported

Replace CSS Grid with table layout for email compatibility.

Before

<div style="display: grid;
            grid-template-columns: 1fr 1fr; gap: 16px;">
  <div>Item 1</div>
  <div>Item 2</div>
</div>

After

<table role="presentation" width="100%" cellpadding="0"
  cellspacing="0" border="0">
  <tr>
    <td width="50%" style="padding: 8px;" valign="top">
      Item 1
    </td>
    <td width="50%" style="padding: 8px;" valign="top">
      Item 2
    </td>
  </tr>
</table>

Replace CSS Grid with table layout for email compatibility

Gmail Android

Partial

Replace CSS Grid with table layout for email compatibility.

Before

<div style="display: grid;
            grid-template-columns: 1fr 1fr; gap: 16px;">
  <div>Item 1</div>
  <div>Item 2</div>
</div>

After

<table role="presentation" width="100%" cellpadding="0"
  cellspacing="0" border="0">
  <tr>
    <td width="50%" style="padding: 8px;" valign="top">
      Item 1
    </td>
    <td width="50%" style="padding: 8px;" valign="top">
      Item 2
    </td>
  </tr>
</table>

Replace CSS Grid with table layout for email compatibility

Gmail iOS

Partial

Replace CSS Grid with table layout for email compatibility.

Before

<div style="display: grid;
            grid-template-columns: 1fr 1fr; gap: 16px;">
  <div>Item 1</div>
  <div>Item 2</div>
</div>

After

<table role="presentation" width="100%" cellpadding="0"
  cellspacing="0" border="0">
  <tr>
    <td width="50%" style="padding: 8px;" valign="top">
      Item 1
    </td>
    <td width="50%" style="padding: 8px;" valign="top">
      Item 2
    </td>
  </tr>
</table>

Replace CSS Grid with table layout for email compatibility

Production guidance for display:grid

display:grid 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 (New), Outlook Classic, Gmail Android. 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:grid 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 Free

Support data last updated Apr 27, 2026 · synced from caniemail.com via @emailens/engine.