The color-scheme CSS property allows an element to indicate which color schemes it can comfortably be rendered in.

Common choices for operating system color schemes are "light" and "dark", or "day mode" and "night mode". When a user selects one of these color schemes, the operating system makes adjustments to the user interface. This includes form controls, scrollbars, and the used values of CSS system colors.

Try it


color-scheme: normal;
color-scheme: light;
color-scheme: dark;
color-scheme: light dark;
color-scheme: only light;

/* Global values */
color-scheme: inherit;
color-scheme: initial;
color-scheme: revert;
color-scheme: revert-layer;
color-scheme: unset;

The color-scheme property's value must be one of the following keywords.



Indicates that the element isn't aware of any color schemes, and so should be rendered using the browser's default color scheme.


Indicates that the element can be rendered using the operating system light color scheme.


Indicates that the element can be rendered using the operating system dark color scheme.


Forbids the user agent from overriding the color scheme for the element.

Can be used to turn off color overrides caused by Chrome's Auto Dark Theme, by applying color-scheme: only light; on a specific element or :root.

Formal definition

Initial valuenormal
Applies toall elements and text
Computed valueas specified
Animation typediscrete

Formal syntax

color-scheme = 
normal |
[ light | dark | <custom-ident> ]+ && only?


Adapting to color schemes

To opt the entire page into the user's color scheme preferences declare color-scheme on the :root element.

:root {
  color-scheme: light dark;


CSS Color Adjustment Module Level 1
# color-scheme-prop

Browser compatibility

BCD tables only load in the browser

See also