Письмо в темной теме

Почтовые программы не спрашивают, прежде чем перекрасить ваше письмо в темной теме, и не договорились между собой, как это делать. Вставьте HTML, чтобы увидеть три варианта рядом и найти то, что становится трудно читать.

Как получить HTML: Mailchimp, Brevo, Constant Contact и похожие сервисы предлагают «Экспорт в HTML» или «Посмотреть код». Для подписи нажмите «Скопировать HTML-код» в нашем конструкторе подписей. В Gmail откройте полученное письмо и выберите «Показать оригинал», чтобы увидеть его код.

Ваш код остаётся в этом браузере и никуда не загружается. Предпросмотр работает в изолированных фреймах с отключёнными скриптами. Изображения загружаются по их собственным адресам, как это делает почтовая программа.

Три поведения, а не одна темная тема

На сайте вы сами решаете, как выглядит темная тема. В почте за вас решает программа читателя, и у каждого семейства программ свой подход.

ПоведениеТипичные программыЧто происходит
Без измененийApple Mail, Outlook для Mac, Gmail в браузереВаши цвета остаются. Окно вокруг письма темное, а само письмо меняется, только если несет свои темные стили.
Частичная инверсияOutlook.com, Outlook и Gmail на Android, Outlook на iPhoneСветлые фоны затемняются, темный текст осветляется. Области, которые уже были темными, не трогаются.
Полная инверсияGmail на iPhone, классический Outlook для WindowsКаждый цвет переворачивается, включая темные фоны, которые становятся светлыми.

Так у одного письма четыре облика: светлый оригинал и эти три. Страница показывает все четыре в ширину компьютера или телефона.

Как строятся превью

Инструмент переписывает каждый цвет, найденный в вашем HTML, будь он во встроенном атрибуте style, в блоке <style> или в старом атрибуте вроде bgcolor. Каждый цвет переводится в тон, насыщенность и светлоту. Тон остается, светлота меняется.

  • Частичная инверсия: фон с относительной яркостью выше 0,35 становится темным. Текст и рамки из темной половины шкалы становятся светлыми. Все остальное остается как есть.
  • Полная инверсия: светлота отражается для каждого цвета, так что белый становится почти черным, а черный почти белым.
  • Без изменений: ничего не переписывается. Если письмо объявляет color-scheme с dark, включаются его правила @media (prefers-color-scheme: dark). Письмо, которое вообще не задает цветов, получает темный фон программы по умолчанию.

Правила для Outlook.com с селекторами [data-ogsc] и [data-ogsb] применяются в частичном превью. Каждое превью работает в изолированном фрейме, где скрипты не выполняются.

Что значат находки

Недостаточный контраст
В каждой версии инструмент сопоставляет каждый видимый фрагмент текста с ближайшим фоном за ним и вычисляет коэффициент контраста. Пары ниже 4,5:1 перечислены, худшие первыми. Ниже 3:1 режим помечается как ошибка. Скрытый текст прехедера пропускается.
Средне-серый текст
Серый с малой насыщенностью и светлотой от 45 до 70 процентов находится в середине шкалы. Инвертируйте его, и получится почти тот же серый, только теперь на противоположном фоне. Для второстепенного текста берите #555555 или темнее.
Темный логотип на прозрачном фоне
Инструмент загружает до 15 изображений и изучает их пиксели. Когда большинство непрозрачных пикселей очень темные, а края прозрачные, логотип растворится на темном фоне. Изображение на непрозрачном белом фоне тоже отмечается, потому что оно покажется белым прямоугольником.
Прозрачность проверить
Сервер изображения не разрешил другому сайту читать его пиксели. Посмотрите темные превью сами.
Настройки темной темы
Показывает, объявляет ли письмо поддержку темной темы и дает ли темные цвета. Объявить поддержку и не дать цветов хуже, чем не объявлять ничего.
Изображения и текст
Письмо, где меньше 120 символов настоящего текста, это в основном картинки, а текст внутри картинок никогда не адаптируется. Отсутствующие атрибуты alt подсчитываются.

Исправления, которые переживут любую программу

Начните с решений, которым не нужен код. Используйте сильные пары, то есть очень темный текст на очень светлом фоне или наоборот: именно средние тона инверсия и губит. Дайте темному логотипу белую обводку в два-три пикселя или поставьте его на белую скругленную подложку внутри файла изображения. Слова оставляйте текстом HTML.

Для рассылки можно затем добавить собственные темные стили для программ, которые их учитывают:

<meta name="color-scheme" content="light dark">
<style>
  :root { color-scheme: light dark; }
  @media (prefers-color-scheme: dark) {
    .card { background-color: #1e1e1e !important; }
    .body-text { color: #f2f2f2 !important; }
  }
</style>

У подписи такой возможности нет. Редактор, куда вы ее вставляете, вырезает <meta> и <style>, и остаются четкие цвета и логотип, который работает на обоих фонах. Наш конструктор подписи может отправить результат прямо на эту страницу.

Это симуляция, построенная на наблюдаемом поведении. Настоящие правила перекраски не опубликованы и меняются с обновлениями программ. Чистый результат считайте хорошим знаком, а затем отправьте тестовое письмо на телефон и компьютер с включенной темной темой.

Частые вопросы

Почему письмо выглядит иначе в темной теме?

Почтовая программа читателя изменила ваши цвета. Одни программы затемняют светлые фоны и осветляют темный текст, другие переворачивают все цвета, третьи ничего не меняют. Результат зависит от программы, а не от вашего дизайна.

Можно ли запретить Gmail инвертировать цвета письма?

Нет. Gmail не дает отправителям переключателя, а его мобильные приложения игнорируют медиазапросы темной темы. Можно лишь сделать письмо, которое остается читаемым после инверсии: сильный контраст, никаких средних серых и логотип со светлой обводкой.

Почему мой логотип исчез в темной теме?

Скорее всего, это темный логотип, сохраненный с прозрачным фоном. Программа заменила белое за ним почти черным, а темное на темном никто не видит. Добавьте к изображению белую обводку или белую подложку либо дайте светлую версию для темной темы.

Какие почтовые программы поддерживают prefers-color-scheme?

Apple Mail на Mac, iPhone и iPad, а также Outlook для Mac его применяют. Gmail и Outlook для Windows нет, а Outlook.com использует свои селекторы [data-ogsc]. Ваши темные стили улучшат дело для части читателей. Всех они не охватят.

Что делает meta-тег color-scheme в письме?

<meta name="color-scheme" content="light dark"> сообщает программе, что письмо само справляется с обоими режимами. Программы, которые это учитывают, тогда используют ваши темные стили. Добавляйте его только вместе с блоком prefers-color-scheme, задающим темные цвета.

Загружается ли куда-то вставленный HTML?

Нет. Перекраска и проверки выполняются в вашем браузере. Запрашиваются только изображения, на которые ссылается ваш HTML, с их собственных адресов, как это сделала бы любая почтовая программа.