Отображение писем в темной теме

Темная тема — это системная настройка устройства или почтового клиента, при которой фон интерфейса меняется со светлого на темный.

Большинство современных почтовых клиентов (Gmail, Apple Mail, ЯндексПочта) в темной теме автоматически инвертируют или корректируют цвета письма для визуального комфорта.

Как почтовые клиенты ведут себя в темной теме

Есть четыре сценария поведения:

Поведение Описание Где встречается
Не меняют цвета Письмо выглядит так же, как в светлой теме Большинство десктопных почтовых клиентов и веб-версия Яндекс Почты
Частично инвертируют цвета У светлых писем фон становится темным, изначально темные письма остаются прежними Mail.ru в мобильной и веб-версии, Outlook.com, Outlook на iOS и Android, Gmail на Android, а также мобильное приложение Яндекс Почты
Полностью инвертируют цвета Инвертируются и светлые, и темные области. Если письмо темное, оно станет светлым Gmail на iOS, Outlook 2021 (Windows) и Office 365
Меняют только обрамление Содержимое письма не меняется, меняется только цвет области вокруг данных отправителя. Поведение можно изменить мета-тегами Apple Mail для десктопа

Вывод

Одно и то же письмо в светлой и темной теме может выглядеть совершенно по-разному — в зависимости от почтового клиента.


Настройки темной темы в конструкторе Mindbox

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

1. Готовьте изображения с прозрачным фоном

Если логотип или картинка лежит на белом фоне — в темной теме вокруг нее появится белый прямоугольник.

Чтобы этого избежать:

  • Сохраняйте логотипы и иконки в PNG с прозрачным фоном (background: transparent). Изображение органично впишется в любой фон — и светлый, и темный.
  • Если прозрачность невозможна (например, JPEG изображение), убедитесь, что цвет фона изображения совпадает с цветом фона блока/письма, или используйте фоновую картинку вместо цвета (см. рекомендацию 3).

editor-themes-image-example.png


2. Выбирайте цвета, которые читаются в обоих режимах

Почтовые клиенты инвертируют контрастные цвета: светлый фон становится темным, черный текст — белым. При использовании неконтрастных цветов, в темной теме текст может «исчезнуть».

Что поможет:

  • Используйте высококонтрастные пары: темный текст на светлом фоне и наоборот. После инверсии они останутся читаемыми.
  • Избегайте едва заметных различий между цветом текста и фона.
  • Тестируйте письмо перед отправкой на устройстве с темной темой.

Например, светло-серый текст на белом фоне превратиться в темно-серый на темном фоне.

editor-themes-contrast-example.png


3. Используйте белую фоновую картинку, чтобы зафиксировать фон

Если важно сохранить белый фон письма и блоков в темной теме, установите белую фоновую картинку вместо цвета фона на всех уровнях: письмо, блок, строка.

Как это работает

Почтовые клиенты инвертируют CSS-цвета, но не трогают фоновые изображения. Белая картинка «закрепит» белый цвет.

В конструкторе фон задается независимо на трех уровнях:

  • письмо — общий внешний фон;
  • блок — фон блока с текстом, картинкой или кнопкой.
  • строка — фон строки внутри письма;

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

Как настроить фон в конструкторе Mindbox:

  1. Откройте настройки нужного элемента (письма, блока или строки).

  2. В разделе «Фон» вместо цвета выберите «Изображение».

  3. Загрузите белую однопиксельную картинку и задайте цвет под изображением

    Цвет под изображением нужен для использования его вместо картинки в Outlook на Windows — он не отображает фоновые картинки в ряде элементов и подставит вместо них этот цвет.

    editor-themes-general-background-settings
    Настройка фона на уровне письма
  4. Повторите то же самое на уровне строки и блока:

    editor-themes-line-background-settings
    Настройка фона на уровне строки
  5. Убедитесь, что у внутренних элементов (например, текста) стоит прозрачный фон:

    editor-themes-line-background-settings
    Настройка фона на уровне строки

Важно

Если вы зафиксировали белый фон через картинку, подберите цвет текста так, чтобы он читался на белом. Черный текст после инверсии станет белым и «исчезнет» на белом фоне.


4. Пропишите CSS-стили для темной темы

Если нужно полностью управлять отображением в темной теме, медиа-запрос prefers-color-scheme: dark. Он позволяет задать отдельные цвета фона, текста и ссылок специально для темного режима.

Как добавить код в конструкторе:

Откройте Настройки письма → Глобальные (CSS) стили и вставьте код в это поле.

editor-themes-css.png

Пример кода:

@media (prefers-color-scheme: dark) {
          body, .wrapper {
            background-color: #1a1a1a !important;
          }
          .text-block {
            color: #ffffff !important;
          }
          .btn {
            background-color: #ffffff !important;
            color: #000000 !important;
          }
        }
        

editor-themes-css-example.png

После указания кода сохраните и протестируйте письмо в темном режиме на своих устройствах.

Важно

Медиа-запрос prefers-color-scheme поддерживают не все почтовые клиенты. Например, Outlook на Windows игнорирует медиа-запросы и применяет инверсию автоматически.


Как проверить письмо в темной теме

  1. Включите темную тему на тестовом устройстве (в системных настройках или в самом почтовом клиенте);
  2. Отправьте тестовое письмо;
  3. Проверьте его в клиентах с разным поведением:
    • Яндекс Почта (веб и мобильная) — не меняет / частично инвертирует;
    • Mail.ru — частично инвертирует;
    • Apple Mail на macOS — почти не меняет;
    • Gmail на iOS — полностью инвертирует;
    • Outlook на Windows — полностью инвертирует и игнорирует медиа-запросы.