Definition
MSO (Microsoft Outlook) conditionals and VML (Vector Markup Language) are legacy technologies email developers use to target Microsoft Outlook specifically. Outlook desktop renders email with Word's engine, which has its own quirks, so developers wrap Outlook-only styles in MSO conditional comments and use VML for visual elements Outlook otherwise cannot render reliably.
The most common use is hiding an element from Outlook with mso-hide: all, and rendering background images in Outlook with VML shapes after the standard CSS background fails.
MSO Conditional Comment Syntax
<!--[if mso]>
<div>This only appears in Microsoft Outlook.</div>
<![endif]-->
<!--[if mso]>: Applies only to versions of Outlook based on Word's engine.<!--[if !mso]><!-->: The opposite — applies to non-Outlook clients.<!--[if gte mso 15]>: Targets a specific Outlook version range.
This lets a single email show different markup or styling to Outlook versus every other client.
Why VML Is Used in Email
- Background images: Word-based Outlook cannot use CSS
background-imageon cells, so developers overlay a VML<v:image>to fake a background. - Rounded corners and shapes: VML can draw shapes like circles and pill buttons Outlook supports poorly via CSS.
- Full-bleed images: VML helps images extend edge to edge where Outlook would otherwise pad or crop.
<!--[if mso]>
<v:rect filled="true" style="width:600px;height:300px;">
<v:fill origin="0,0" position="0,0" src="https://example.com/hero.jpg" />
</v:rect>
<![endif]-->
How to Use MSO Conditionals and VML Safely
- Progressive enhancement first: Build a clean standard email, then layer Outlook-specific fixes inside conditionals.
- Match the fallback hidden from Outlook: If VML shows a background image, realise Outlook may not show the CSS version; provide a matching solid background colour fallback.
- Test in Outlook: Because the Word engine differs so much, verify actual Outlook desktop appearance before sending.
- Keep VML minimal: Only use it where standard CSS fails; unnecessary VML adds complexity and maintenance burden.
Related Glossary Terms
Above the Fold in Email
Above the fold in email refers to the content visible to a recipient before they scroll, a critical area for first impressions and primary calls to action.
Accessible CTA (Email)
An accessible CTA is a button or link coded with sufficient colour contrast, visible focus states, descriptive screen-reader text, and a minimum touch target of 44×44 pixels.
Adaptive Design
Adaptive design in email uses predefined layouts that adjust to specific device or client widths, rather than fluidly resizing to every possible screen.
AI-Generated Content in Email
AI-generated content in email is copy, images, code or subject lines produced by artificial intelligence tools to speed up campaign production and testing.
Alt Text
Alt text is the written alternative to an image in an email, displayed when images are blocked, slow to load, or consumed by screen readers.
AMP for Email
AMP for Email is a technology that allows interactive, dynamic content to live inside an email message, enabling forms, carousels and live updates.
Frequently Asked Questions
MSO conditionals are HTML comments Outlook specifically processes, letting developers show different markup or styles only in Microsoft Outlook. They look like `` and are ignored by all other email clients.
Outlook desktop uses Microsoft Word's rendering engine rather than a web browser engine. Word handles CSS and backgrounds differently, so email that works in Gmail or Apple Mail may look wrong, crop oddly, or lose background images in Outlook.
VML (Vector Markup Language) is a Microsoft-proprietary markup for describing vector graphics. In email it is used inside MSO conditionals to render background images and shapes in Word-based Outlook that normal CSS cannot display reliably.
Yes, if Outlook desktop represents a meaningful share of your subscribers. The Word engine remains in current Outlook, so any email relying on CSS background images, rounded corners or certain spacing benefits from MSO conditionals and VML fallbacks.