:has
selector or pseudo-class · 5 supported, 0 partial, 15 unsupported across 21 clients
As of Oct 14, 2026, :has fails or degrades in 16 of 21 email clients, treat it as progressive enhancement, never structure.
- 2/7 webmail, 1/6 desktop, 2/8 mobile clients support :has fully.
- Unsupported in Gmail, Gmail Android, Gmail iOS, Outlook 365 and 11 more.
- Outlook Classic (Word engine, supported to at least 2029) does not fully support :has, and its replacement changes little here; see the deprecation diff.
- Across all clients, only 6 of 298 tracked HTML/CSS features render identically everywhere.
Source: caniemail.com (MIT), via the Emailens engine. Last tested upstream Mar 15, 2022, synced by Emailens Oct 14, 2026.
The :has pseudo-class selects elements that contain a descendant matching a sub-selector. It is one of the newest CSS features and email support is limited, Apple Mail and modern Gmail support it in modern engine versions, while Outlook and most others ignore it. It is best treated as progressive enhancement.
Client Support
| Client | Category | Engine | Support |
|---|---|---|---|
| Gmail | webmail | Gmail Web | Unsupported |
| Gmail Android | mobile | Gmail Mobile | Unsupported |
| Gmail iOS | mobile | Gmail Mobile | Unsupported |
| Outlook 365 | webmail | Outlook Web | Unsupported |
| Outlook (New) | desktop | Outlook Web | Unsupported |
| Outlook Classic | desktop | Microsoft Word | Unsupported |
| Outlook iOS | mobile | Outlook Mobile | Unsupported |
| Outlook Android | mobile | Outlook Mobile | Unsupported |
| Outlook for Mac | desktop | WebKit | Unsupported |
| Apple Mail | desktop | WebKit | Supported |
| Apple Mail iOS | mobile | WebKit | Supported |
| Yahoo Mail | webmail | Yahoo | UnsupportedSee caveat 1 |
| Yahoo Mail Android | mobile | Yahoo | Unsupported |
| Yahoo Mail iOS | mobile | Yahoo | Unsupported |
| Samsung Mail | mobile | Samsung | Supported |
| Thunderbird | desktop | Gecko | Unsupported |
| HEY Mail | webmail | WebKit | Supported |
| Proton Mail | webmail | Proton | Unsupported |
| AOL Mail | webmail | AOL | UnsupportedSee caveat 1 |
| Fastmail | webmail | Fastmail | Supported |
| Superhuman | desktop | Blink | Unknown |
Documented caveats (1)
- 1.Yahoo Mail, AOL Mail: Not supported.
:has(…)is replaced by:has.
Caveats recorded by caniemail.com (MIT) and carried verbatim, one entry per wording rather than per client.
Client-by-client behaviour for :has
Fully supports :has (5): Apple Mail, Apple Mail iOS, Samsung Mail, HEY Mail, Fastmail.
No support (15): Gmail, Gmail Android, Gmail iOS, Outlook 365, Outlook (New), Outlook Classic, Outlook iOS, Outlook Android, Outlook for Mac, Yahoo Mail, Yahoo Mail Android, Yahoo Mail iOS, Thunderbird, Proton Mail, AOL Mail. Plan fallbacks for these clients before relying on :has in production sends.
Behaviour unverified in: Superhuman.
When to use :has in email
- Styling cards differently when they contain an image versus text-only content.
- Adjusting list item spacing based on whether a parent contains nested lists.
- Conditional styling in modern-client-targeted designs.
Rendering behaviour and edge cases
- Outlook on Windows ignores :has entirely.
- Apple Mail supports :has on macOS Ventura+ and iOS 16+.
- Gmail Web honors :has only when <style> blocks survive sanitization.
Recommended fallback strategy
Provide a default styling that works without :has, then use :has selectors for refinements. Never rely on :has to deliver structural visibility, fall back to explicit class-based styling as the baseline.
Fixes & Workarounds
Gmail
Unsupported":has" is not supported in this email client.
Gmail Android
Unsupported":has" is not supported in this email client.
Gmail iOS
Unsupported":has" is not supported in this email client.
Outlook 365
Unsupported":has" is not supported in this email client.
Outlook (New)
Unsupported":has" is not supported in this email client.
Outlook Classic
Unsupported":has" is not supported in this email client.
Outlook iOS
Unsupported":has" is not supported in this email client.
Outlook Android
Unsupported":has" is not supported in this email client.
Outlook for Mac
Unsupported":has" is not supported in this email client.
Yahoo Mail
Unsupported":has" is not supported in this email client.
Yahoo Mail Android
Unsupported":has" is not supported in this email client.
Yahoo Mail iOS
Unsupported":has" is not supported in this email client.
Thunderbird
Unsupported":has" is not supported in this email client.
Proton Mail
Unsupported":has" is not supported in this email client.
AOL Mail
Unsupported":has" is not supported in this email client.
Related Features
Check your own HTML for :has
Paste your own, or run the sample below. Analyzed in this page, with no signup and nothing stored.
Test your :has layout across 21 email clients
Preview rendering, catch CSS issues, and see how :has displays across Outlook, Gmail, and Apple Mail. Free, no account needed.
Instant live preview · No signup required · 21 email engines
Last tested upstream: · Last synced by Emailens:
caniemail.com (MIT) records Mar 15, 2022 as the last time :has was tested in a real client, 4 years before this sync. Syncing copies that result forward, it does not re-test it. Carried in @emailens/engine data v0.14.5.