Apple Mail vs Outlook Classic: CSS Support Differences
Apple Mail renders with WebKit; Outlook Classic renders with Microsoft Word. The gap runs almost entirely one way: 195 features work in Apple Mail and break in the other, against 0 in the reverse direction. Build for the stricter one and the permissive one follows.
Support data derived from caniemail.com (MIT) - last synced Sep 2, 2026 - engine data v0.12.2
56
work in both
the safe intersection
195
only in Apple Mail
breaks in Outlook Classic
0
only in Outlook Classic
breaks in Apple Mail
33
partial on one side
renders, with caveats
Works in Apple Mail, breaks in Outlook Classic
Each of these needs a fallback if the send reaches both.
- <abbr>
- <acronym>
- <audio>
- <base>
- <bdi>
- <button type="reset">
- <button type="submit">
- <dialog>
- <form>
- <input type="checkbox">
- <input type="hidden">
- <input type="radio">
- <input type="reset">
- <input type="submit">
- <input type="text">
- <marquee>
- <meter>
- <progress>
- <rp>
- <rt>
- <ruby>
- <select>
- <textarea>
- <video>
- <wbr>
- [aria-describedby]
- [aria-hidden]
- [aria-label]
- [aria-labelledby]
- [aria-live]
- [background]
- [command]
- [hidden]
- [loading]
- [popover]
- [required]
- [role]
- [srcset]
- @font-face
- @keyframes
- @media
- @media device-pixel-ratio
- @media hover
- @media orientation
- @media prefers-color-scheme
- @media prefers-reduced-motion
- @supports
- accent-color
- align-items
- animation
- aspect-ratio
- backdrop-filter
- background-blend-mode
- background-clip
- background-image
- background-origin
- background-position
- background-repeat
- background-size
- bimi
- block-size
- border-image
- border-inline
- border-inline-individual
- border-inline-longhand
- border-radius
- border-radius-logical
- border-spacing
- bottom
- box-shadow
- box-sizing
- calc
- caption-side
- clamp
- clear
- clip-path
- column-count
- columns
- conic-gradient
- custom-properties
- empty-cells
- filter
- fit-content
- flex-direction
- flex-wrap
- float
- font-size-adjust
- gap
- grid-template-columns
- html5-semantics
- hyphenate-character
- hyphens
- image-maps
- inert
- inset
- justify-content
- left
- light-dark
- linear-gradient
- list-style-image
- list-style-position
- margin-block-start-end
- margin-inline-block
- margin-inline-start-end
- mask-image
- max
- max-block-size
- max-height
- max-inline-size
- meta-color-scheme
- min
- min-block-size
- min-height
- min-inline-size
- min-width
- mix-blend-mode
- object-fit
- object-position
- opacity
- orphans
- outline
- outline-offset
- padding-block-start-end
- padding-inline-block
- padding-inline-start-end
- pseudo-class-default
- pseudo-class-nth-last-of-type
- radial-gradient
- rgba
- right
- scroll-snap
- shape-margin
- shape-outside
- system-ui
- tab-size
- table-layout
- text-decoration-color
- text-decoration-line
- text-decoration-skip-ink
- text-decoration-style
- text-decoration-thickness
- text-emphasis
- text-emphasis-position
- text-orientation
- text-overflow
- text-shadow
- text-underline-offset
- text-wrap
- top
- transform
- transition
- unit-ch
- unit-initial
- unit-rem
- unit-vh
- unit-vmax
- unit-vmin
- unit-vw
- user-select
- visibility
- white-space
- white-space-collapse
- widows
- word-spacing
- writing-mode
- z-index
- ::after
- ::before
- ::first-letter
- ::first-line
- ::marker
- ::placeholder
- :adjacent-sibling
- :attribute-selector
- :chaining
- :checked
- :child-combinator
- :first-child
- :first-of-type
- :focus
- :general-sibling
- :has
- :hover
- :lang
- :last-child
- :last-of-type
- :not
- :nth-child
- :nth-last-child
- :nth-of-type
- :only-child
- :only-of-type
- :universal-selector
- display:flex
- display:grid
Works in Outlook Classic, breaks in Apple Mail
Nothing: every feature Outlook Classic supports is also supported in Apple Mail.
Partial on one side
These render in both, but one client applies caveats the other does not. They fail quietly, which makes them the expensive ones.
- <dfn>
- <object>
- <picture>
- <style>
- <svg>
- <ul>
- [dir]
- [target]
- !important
- background
- border
- display
- font-size
- font-weight
- letter-spacing
- line-height
- list-style
- margin
- max-width
- nesting
- overflow
- overflow-wrap
- padding
- position
- pseudo-class-active
- resize
- rgb
- text-align
- text-decoration
- text-transform
- text-underline-position
- word-break
- display:none
A further 6 features render in neither client. Not a difference between them, but the other half of the answer to what you can actually use, so the four counts above deliberately do not sum to 290.
8 of 298 features have no confident data point for at least one of these clients, so they are excluded from every count above rather than assumed either way.
Where the divergence sits
Two pairs with the same headline number can be different problems. For these two it concentrates in CSS Properties.
- CSS Properties 132
- HTML Elements 31
- Pseudo-Classes & Selectors 24
- HTML Attributes 15
- CSS At-Rules 9
- CSS Functions 8
33 of these already have a fix
Each links to a copy-paste snippet that keeps the feature working in Outlook Classic without dropping it in Apple Mail.
Check your own HTML against both
Check your own HTML
Paste your own, or run the sample below. Analyzed in this page, with no signup and nothing stored.
Questions
- How different are Apple Mail and Outlook Classic?
- They disagree on 228 of the 290 features verified in both clients, or 79%. 56 features render in both and are the safe intersection to build on.
- What works in Apple Mail but not Outlook Classic?
- 195 features, including <abbr>, <acronym>, <audio>, <base>, <bdi> and 190 more. Each needs a fallback if the send reaches both clients.
- Which engines are these two clients using?
- Apple Mail renders with WebKit; Outlook Classic renders with Microsoft Word. Where two clients share an engine the divergence is usually configuration, and where they do not it is the engine itself.
- Is this measured in the real clients?
- No. These are documented support levels derived from caniemail.com (MIT-licensed), carried in @emailens/engine data version 0.12.2 and last synced Sep 2, 2026. That sync date is not a test date: caniemail's own per-feature tests run from Feb 28, 2019 to Jul 13, 2026. Anything described as a transform is applied per those documented rules rather than captured from a real client.
Test your email in Gmail, Outlook and Apple Mail
Preview rendering, catch CSS issues, and see what Outlook does to your VML. Free, no account. All 21 clients with one.
Instant live preview · No signup required · 21 email engines