Skip to main content

Our email CSS engine is open source. Give it a star on GitHub 

Emailens

CSS property · 10 real installs 14 Oct 2026 · data last changed 10 Nov 2026

padding in email clients

Works in 20 of 21. Partial in Outlook Classic.

Your reader in Outlook Classic may not see padding the way you wrote it, even if it looks right where you tested it.

caniemail (MIT) via @emailens/engine 0.18.22

The fix for Outlook Classic

Use MSO font-width trick for reliable button padding in Outlook

after
<!--[if mso]>
<table role="presentation" cellpadding="0" cellspacing="0" border="0"
  style="border-collapse: collapse;">
  <tr>
    <td style="background-color: #6d28d9; padding: 0;
               mso-padding-alt: 12px 32px;">
      <!--[if mso]>
      <i style="letter-spacing: 32px; mso-font-width: -100%;
                mso-text-raise: 18pt;" hidden>&#8202;</i>
      <![endif]-->
      <a href="https://example.com"
        style="background-color: #6d28d9; color: #fff;
               mso-text-raise: 9pt; text-decoration: none;
               font-family: Arial, sans-serif; font-size: 14px;
               font-weight: bold;">Click Here</a>
      <!--[if mso]>
      <i style="letter-spacing: 32px; mso-font-width: -100%;"
         hidden>&#8202;</i>
      <![endif]-->
    </td>
  </tr>
</table>
<![endif]-->
<!--[if !mso]><! -->
<a href="https://example.com"
  style="background-color: #6d28d9; color: #fff;
         padding: 12px 32px; display: inline-block;
         text-decoration: none;">
  Click Here
</a>
<!-- <![endif]-->
Show the original
before
<a href="https://example.com"
  style="background-color: #6d28d9; color: #fff;
         padding: 12px 32px; display: inline-block;
         text-decoration: none;">
  Click Here
</a>

The checker needs a computer screen.

A free account opens all 21 clients and keeps your checks for 7 days. Create a free account →

padding on 10 real installs

One Emailens probe, screenshotted on each install on 14 October 2026, next to our live preview of the same client. Where padding is supported you should see: text inset 20px inside the border.

Also captured, not counted as evidence (3)

Every account includes one free real-device check in classic Outlook, Outlook for Mac and Apple Mail, after you verify your email and run one preview, while this month's free capacity lasts. How real-device checks work →

All 21 clients, problems first

ClientSupport
Outlook Classic Partial See caveat 1
Works in 20: Gmail, Gmail Android, Gmail iOS and 17 more. Show all
ClientSupport
Gmail Works
Gmail Android Works
Gmail iOS Works
Outlook 365 Works
Outlook (New) Works
Outlook iOS Works
Outlook Android Works
Outlook for Mac Works
Apple Mail Works
Apple Mail iOS Works
Yahoo Mail Works
Yahoo Mail Android Works
Yahoo Mail iOS Works
Samsung Mail Works
Thunderbird Works
HEY Mail Works
Proton Mail Works
AOL Mail Works
Fastmail Works
Superhuman Works

Caveats (1)

  1. 1. Outlook Classic: Partial. Only supported on table cells. Buggy. Vertical padding will be the same for all cells of a same row, adopting the biggest value.

Caveats as recorded by caniemail (MIT), one entry per wording.

How padding behaves

padding controls the internal spacing of email layout cells and is one of the most frequently mishandled properties across email clients. While modern clients support shorthand padding correctly, Outlook Classic interprets padding differently depending on the element type and often shifts content unexpectedly when padding is mixed between table cells and divs.

  • Outlook Classic applies padding inconsistently on <div> elements, use <td> with padding for layout instead.
  • Apple Mail and modern Gmail honor shorthand padding values, but older Yahoo Mail builds occasionally drop the bottom value.
  • When padding is set on a button anchor, some clients add their own native button padding on top, doubling the apparent space.

Apply padding to <td> elements rather than <div> wrappers whenever possible. Keep padding within a single shorthand declaration to avoid Outlook reordering issues. For large hero spacing, use spacer rows with line-height instead of padding when targeting Outlook 2007-2019.

Your next question

padding in Outlook Classic · Every feature in Outlook Classic · All email CSS features · What real installs show

Get new email CSS fixes by email.

Real captures 14 Oct 2026 on 10 installs · caniemail (MIT) via @emailens/engine 0.18.22 · tested upstream 25 Jul 2019 · data last changed 10 Nov 2026 · Outlook (New) cells are the engine's mapping

caniemail does not re-test old entries; our captures are how we check them.