forced-colors

The forced-colors CSS media feature is used to detect if the user agent has enabled a forced colors mode where it enforces a user-chosen limited color palette on the page.

Note: This feature is not supported by any user agent and its specifics are subject to change.

Syntax

The forced-colors media feature indicates whether or not the browser is currently in forced-colors mode.

Values

none
Forced colors mode is not active; the page’s colors are not being forced into a limited palette.
active
Indicates that forced colors mode is active. The browser provides the color palette to authors through the CSS system color keywords and, if appropriate, it triggers the appropriate value of prefers-color-scheme so that authors can adapt the page.

Usage notes

Properties affected by forced-color mode

In forced colors mode, the values of the following properties are treated as if they have no author-level values specified. That is, user-specified values (if any) or browser-specified values are used instead.

You can use system color keywords with any property other than those listed above, to ensure that the rest of the page integrates with the restricted color palette available in forced colors mode.

User preferences

Currently no user agent implements this feature, although various operating systems do support such preferences and if this media query is ever implemented user agents will likely rely on the settings provided by the operating system in use.

Examples

Note: No browser currently implements this feature so the following example will not work.

This example has an annoying color palette by default. This example does not take advantage of the colors provided by the user agent.

HTML

<div class="colors">weird color box</div>

CSS

.colors {
  background-color: red;
  color: grey; 
}

@media (forced-colors: active) {
  .colors {
    background-color: white;
    color: black;
  }
}

Result

Specifications

Specification Status Comment
Media Queries Level 5
The definition of 'forced-colors' in that specification.
Editor's Draft Initial definition.

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
forced-colors media feature
Experimental
Chrome Full support 79
Notes Disabled
Full support 79
Notes Disabled
Notes See bug 970285.
Disabled From version 79: this feature is behind the #forced-colors preference (needs to be set to Enabled). To change preferences in Chrome, visit chrome://flags.
Edge Full support 79Firefox Full support 81
Disabled
Full support 81
Disabled
Disabled From version 81: this feature is behind the layout.css.forced-colors.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE No support NoOpera No support NoSafari No support NoWebView Android No support No
Notes
No support No
Notes
Notes See bug 970285.
Chrome Android No support No
Notes
No support No
Notes
Notes See bug 970285.
Firefox Android No support NoOpera Android No support NoSafari iOS No support NoSamsung Internet Android No support No
Notes
No support No
Notes
Notes See bug 970285.

Legend

Full support  
Full support
No support  
No support
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.
See implementation notes.
See implementation notes.
User must explicitly enable this feature.
User must explicitly enable this feature.

See also