CSS light-dark() — два кольори для світлої і темної теми


CSS функція light-dark() задає два кольори одним рядком: перший для світлої теми, другий для темної.

автор: NagarD

Загальний опис

Раніше кожен колір теми доводилось дублювати в @media (prefers-color-scheme: dark). Файл стилів роздувався вдвічі, а половина правил існувала лише щоб перевизначити іншу половину.

light-dark() прибирає це дублювання: обидва значення стоять поруч, і браузер сам обирає потрібне.

автор: NagarD

Нотатка

Функція працює тільки якщо задано color-scheme — інакше браузер не знає, яку тему вважати активною.

автор: NagarD

Синтаксис

light-dark(<color-light>, <color-dark>)

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
light-dark 123+ 120+ 17.5+ 109+ 123+ -
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
light-dark 123+ yes yes 17.5+

Приклади

+ запропонувати свій приклад у пісочниці

Тема без жодного media query.

HTML

<p class="panel">Колір змінюється разом із темою системи</p>

CSS

:root {
    /* без цього рядка light-dark() не працює */
    color-scheme: light dark;
}

.panel {
    background: light-dark(#ffffff, #14170f);
    color: light-dark(#14170f, #eceee3);
    padding: 1rem;
}
автор: NagarD

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Зворотний зв'язок
Вхід