CSS color-adjust (now print-color-adjust) works in Chrome 19+, Edge 79+, Firefox 48+, Safari 6+, Opera 15+, and on iOS Safari 15.4+. See values and issues.

Prince Dewani
May 6, 2026
The CSS color-adjust property, renamed to print-color-adjust in the CSS Color Adjustment Module, tells browsers whether to keep an element's declared colors on printed output or swap them for ink-saving versions. It works in Chrome 19+, Edge 79+, Firefox 48+, Safari 6+ on macOS, iOS 15.4+, Opera 15+, and Opera Mobile 80+; Internet Explorer never shipped support.
This guide covers what color-adjust is, browsers that support it, the economy and exact values, how it differs from forced-color-adjust, and known issues.
CSS color-adjust, now standardized as print-color-adjust in the CSS Color Adjustment Module Level 1, is a property that controls whether the browser may swap an element's declared backgrounds, images, and colors when sending the page to a printer. It accepts two keywords: economy and exact.
Every major desktop and mobile engine supports color-adjust today, though Chrome and Safari still need the -webkit-print-color-adjust prefix on older builds and Internet Explorer never added the property at all.
Chrome supports color-adjust from Chrome 19 on Windows, macOS, Linux, ChromeOS, and Android through the prefixed -webkit-print-color-adjust form. The unprefixed print-color-adjust alias works from Chrome 92 on every desktop and Android release, and both forms accept the same economy and exact values.
Microsoft Edge supports color-adjust from Edge 79 on Windows, macOS, and Linux, since the Chromium-based rebuild inherits Chrome's print pipeline. Legacy EdgeHTML 12 to 18 did not support the property, so move IE-era print stylesheets onto modern Edge for predictable output.
Firefox supports color-adjust from Firefox 48 on Windows, macOS, Linux, and Android, with the unprefixed print-color-adjust alias landing in Firefox 97. Earlier Firefox 2 to 47 builds ignored the property entirely and stripped backgrounds during print with no way to opt out.
Safari supports color-adjust from Safari 6 on macOS through the prefixed -webkit-print-color-adjust form, and the unprefixed print-color-adjust from Safari 15.4 on macOS and iOS. Mobile Safari on iPhone and iPad shares the same WebKit engine, so the same version cutoffs apply across desktop and mobile.
Opera supports color-adjust from Opera 15 on Windows, macOS, and Linux, since the Chromium rebuild picked up the WebKit prefix and the standard property at the same time. Opera Mobile picks up color-adjust from Opera Mobile 80 on Android, matching the underlying Chromium release.
Samsung Internet supports color-adjust on every modern Galaxy build, since the browser tracks the Chromium engine and inherits the same print-color-adjust pipeline as Chrome. The unprefixed property works alongside the WebKit prefix, so a single rule that ships both names covers every shipping version.
The stock Android Browser supports color-adjust on current Android releases, since the system WebView tracks Chromium and inherits the same property. Earlier Android Browser builds shipped before color-adjust existed and silently dropped backgrounds during print, so include both prefixed and unprefixed forms when targeting older Android phones.
Internet Explorer never supported color-adjust on any version from IE 5.5 to IE 11. Microsoft has retired Internet Explorer 11, so any print stylesheet that has to keep backgrounds for IE-era users needs a server-rendered PDF fallback. Move new work to Chromium-based Edge, which respects color-adjust by default.
Note: color-adjust still trips up real print jobs across Safari, older Chrome, and IE-era setups. Test it on real browsers and OS with TestMu AI. Try TestMu AI free!
The property accepts two keywords, economy and exact, plus the standard CSS-wide values like inherit and initial. Each keyword tells the browser how aggressive to be when adjusting an element's colors for the output device.
| Dimension | print-color-adjust (color-adjust) | forced-color-adjust |
|---|---|---|
| Purpose | Controls color preservation on print output | Controls color preservation in OS forced-colors mode |
| Trigger | Any print job or @media print stylesheet | Windows High Contrast and @media (forced-colors: active) |
| Values | economy, exact | auto, none |
| Default | economy | auto |
| Inherits | Yes | Yes |
| Typical use | Preserve charts, swatches, and zebra rows on paper | Opt out of high-contrast remapping for branded UI |
| Browser support | Chrome 19+, Edge 79+, Firefox 48+, Safari 6+ | Chrome 89+, Edge 89+, Firefox 113+, Safari 18+ |
color-adjust applies to any element. Wrap the rule in an @media print block and pair the prefixed -webkit-print-color-adjust with the unprefixed print-color-adjust so every browser reads the same intent.
color-adjust is widely supported, but a few cross-browser quirks still trip up real print jobs. The common pain points are user-override toggles, the legacy alias, vendor-prefix gaps, image rendering, and inheritance.
In my experience, the biggest production failure is forgetting the WebKit prefix for Safari. A chart that prints with the right gridlines on Chrome can print as a blank white box on macOS Safari, because the unprefixed property only landed in Safari 15.4 and a sizeable share of Mac users still run older builds.
All CSS color-adjust version numbers and platform notes in this guide come from these primary sources:
Did you find this page helpful?
More Related Hubs
TestMu AI forEnterprise
Get access to solutions built on Enterprise
grade security, privacy, & compliance