Intent to Prototype: Media Queries: prefers-contrast feature

Skip to first unread message

Alison Maher

Oct 15, 2020, 12:59:40 PM10/15/20
to, Daniel Libby

Contact emails





Adds the 'prefers-contrast' feature, which lets authors adapt web content to user-selected level of contrast in the OS, such as increased contrast mode on macOS and high contrast mode on Windows. Valid options are 'more', 'less', 'forced', or 'no-preference'.

Blink component


Search tags

prefers-contrast, contrast, css

TAG review

Given that this will only be adding a new type of media query that is already in the spec and has been resolved on by the CSSWG, no TAG review is needed.


Interoperability and Compatibility

Gecko: In development ( Implemented behind a flag

WebKit: Neutral (

Web developers: Positive (,


If Forced Colors Mode is enabled, 'prefers-contrast: forced' will evaluate to true, in addition to 'forced-colors: active'. Additionally, the spec mentions that "when the user agent can determine whether the forced color palette chosen by the user has a high or low contrast, one of 'prefers-contrast: more' or 'prefers-contrast: less' must match in addition to 'prefers-contrast: forced'." Using WCAG definitions[1], and in collaboration with Windows accessibility experts, we have decided to match 'more' in Forced Colors Mode if the contrast ratio between the foreground and background color is 7:1 or greater. "A contrast ratio of 3:1 is the minimum level recommended by [[ISO-9241-3]] and [[ANSI-HFES-100-1988]] for standard text and vision"[1]. Given this, we will start by matching to 'less' in Forced Colors Mode if the contrast ratio between the foreground and background color is 2.5:1 or less. These ratios will act as an experimental baseline that we can adjust based on user feedback. [1]

Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?


The feature will be supported on all platforms, but whether the user will be able to change to a specific contrast preference may depend on the OS.

Is this feature fully tested by web-platform-tests?


Tracking bug

Link to entry on the Chrome Platform Status
Reply all
Reply to author
0 new messages