box-shadow
CSS property · 12 supported, 2 partial, 7 unsupported across 21 clients
Client Support
| Client | Category | Engine | Support |
|---|---|---|---|
| Gmail | webmail | Gmail Web | Unsupported |
| 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 | Unsupported |
| Yahoo Mail Android | mobile | Yahoo | Unsupported |
| Yahoo Mail iOS | mobile | Yahoo | Unsupported |
| Samsung Mail | mobile | Samsung | Supported |
| Thunderbird | desktop | Gecko | Supported |
| HEY Mail | webmail | WebKit | Supported |
| Proton Mail | webmail | Proton | Supported |
| AOL Mail | webmail | AOL | Unsupported |
| Fastmail | webmail | Fastmail | Supported |
| Superhuman | desktop | Blink | Supported |
Client-by-client behaviour for box-shadow
Fully supports box-shadow (12): Outlook 365, Outlook iOS, Outlook Android, Outlook for Mac, Apple Mail, Apple Mail iOS, Samsung Mail, Thunderbird, HEY Mail, Proton 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 (7): Gmail, Outlook (New), Outlook Classic, Yahoo Mail, Yahoo Mail Android, Yahoo Mail iOS, AOL Mail. Plan fallbacks for these clients before relying on box-shadow in production sends.
Fixes & Workarounds
Gmail
UnsupportedUse border styling as an alternative to box-shadow.
Before
.card {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}After
.card {
border: 1px solid #e0e0e0;
/* box-shadow as progressive enhancement */
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}Use border as a fallback for box-shadow
Outlook (New)
UnsupportedUse border styling as an alternative to box-shadow.
Before
.card {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}After
.card {
border: 1px solid #e0e0e0;
/* box-shadow as progressive enhancement */
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}Use border as a fallback for box-shadow
Outlook Classic
UnsupportedUse border styling as an alternative to box-shadow.
Before
.card {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}After
.card {
border: 1px solid #e0e0e0;
/* box-shadow as progressive enhancement */
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}Use border as a fallback for box-shadow
Yahoo Mail
UnsupportedUse border styling as an alternative to box-shadow.
Before
.card {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}After
.card {
border: 1px solid #e0e0e0;
/* box-shadow as progressive enhancement */
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}Use border as a fallback for box-shadow
Yahoo Mail Android
UnsupportedUse border styling as an alternative to box-shadow.
Before
.card {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}After
.card {
border: 1px solid #e0e0e0;
/* box-shadow as progressive enhancement */
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}Use border as a fallback for box-shadow
Yahoo Mail iOS
UnsupportedUse border styling as an alternative to box-shadow.
Before
.card {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}After
.card {
border: 1px solid #e0e0e0;
/* box-shadow as progressive enhancement */
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}Use border as a fallback for box-shadow
AOL Mail
UnsupportedUse border styling as an alternative to box-shadow.
Before
.card {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}After
.card {
border: 1px solid #e0e0e0;
/* box-shadow as progressive enhancement */
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}Use border as a fallback for box-shadow
Gmail Android
PartialUse border styling as an alternative to box-shadow.
Before
.card {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}After
.card {
border: 1px solid #e0e0e0;
/* box-shadow as progressive enhancement */
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}Use border as a fallback for box-shadow
Gmail iOS
PartialUse border styling as an alternative to box-shadow.
Before
.card {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}After
.card {
border: 1px solid #e0e0e0;
/* box-shadow as progressive enhancement */
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}Use border as a fallback for box-shadow
Production guidance for box-shadow
box-shadow is a CSS property. Across the email client matrix, 12 of 15 tracked clients support it fully, 2 only partially, and 7 not at all. The clients most likely to require a workaround for this feature are Gmail, Outlook (New), 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 box-shadow 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.