Outlook.com / Outlook 365 Web
Outlook.com and the Outlook 365 web app use a real browser engine (Blink), making them significantly more capable than Outlook desktop. However, Microsoft still applies HTML sanitization for security, stripping some properties.
Engine vs. Desktop Outlook
Unlike Outlook 2007–2019 which uses Word's MSO engine, Outlook.com renders in the browser using Blink (Chrome's engine). This means most modern CSS works — but Microsoft's sanitizer still removes certain properties it considers risky.
Flexbox
Partial support. Basic flexbox properties work, but complex flex layouts (nested flex, flex-wrap, gap) can be unreliable. Test thoroughly, and have table-based fallbacks ready.
CSS Grid
Not supported. Grid properties are stripped by the sanitizer. Use tables or flexbox for layout.
position: fixed / sticky
Not supported. Fixed and sticky positioning is stripped for security (prevents email content from overlapping the Outlook UI). position: relative and absolute have partial support.
CSS Variables
Not supported. Custom properties are stripped by the sanitizer. Inline all values directly.
Transforms and Transitions
Not supported. CSS transform and transition are stripped. Avoid animations and transforms in email entirely.
<style> in <head>
Partial support. Outlook.com supports <style> blocks in some contexts, but it is not guaranteed. Inline styles are always the safest approach.
External Stylesheets
Not supported. <link> tags are stripped. All CSS must be inline or in a <style> block.
Media Queries
Partial support. Some media queries work in Outlook.com's web interface, but support varies between the web app and mobile clients. Don't rely on them as your only responsive strategy.
Viewport Units (vh/vw)
Not supported. Viewport units are stripped. Use fixed pixel values or percentage widths instead.
Key Takeaways
- Much more capable than Outlook desktop — but still has a sanitizer
- No CSS grid, no transforms, no CSS variables, no viewport units
- Flexbox works partially — test carefully
- Inline all critical styles
- No external stylesheets
- Avoid fixed/sticky positioning