The monochrome CSS media feature can be used to test the number of bits per pixel in the monochrome frame buffer of the output device.

Syntax

The monochrome feature is specified as an <integer> representing the number of bits per pixel in the monochrome frame buffer. If the device is not a monochrome device, the value is zero. It is a range feature, meaning that you can also use the prefixed min-monochrome and max-monochrome variants to query minimum and maximum values, respectively.

Example

HTML

<p class="mono">Your device supports monochrome pixels!</p>
<p class="no-mono">Your device doesn't support monochrome pixels.</p>

CSS

p {
  display: none;
}

/* Any monochrome device */
@media (monochrome) {
  p.mono {
    display: block;
    color: #333;
  }
}

/* Any non-monochrome device */
@media (monochrome: 0) {
  p.no-mono {
    display: block;
    color: #ee3636;
  }
}

Result

Specifications

Specification Status Comment
Media Queries Level 4
The definition of 'monochrome' in that specification.
Candidate Recommendation The value can now be negative, in which case it computes to false.
Media Queries
The definition of 'monochrome' in that specification.
Recommendation Initial definition. The value must be nonnegative.

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support Yes ? Yes No Yes Yes
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support ? ? ? ? ? ? ?

Document Tags and Contributors

Contributors to this page: connorshea, mfluehr, kscarfone, cvrebert
Last updated by: connorshea,