light-dark 関数は CSS のカラー関数で、引数に 2 つのカラー値を取り、ライトモードのときには 1 つ目の値をを、ダークモードのときには 1 つ目の値を返します。
color-scheme プロパティの値もしくはユーザーの OS のダークモード設定によって切り替わります。
:root {
color-scheme: light dark;
}
html {
color: light-dark(#333, #ccc);
background-color: light-dark(#fff, #000);
}今まで prefers-color-scheme メディアクエリを使って実装していたものを簡潔に書けるようになります。
html {
color: #333;
background-color: #fff;
}
@media (prefers-color-scheme: dark) {
html {
color: #ccc;
background-color: #000;
}
}ただし、light-dark 関数はカラー値のみにしか使えないため、prefers-color-scheme メディアクエリでできることよりも制限されています。