- macOS and GNOME have system-level high contrast modes that interact with the separate light/dark mode settings, and will send both preferences to browsers that support it. GNOME will also change the icon themes to stark black-and-white images where available.
- Android only seems to have a high-contrast text mode as far as I can tell.
- Windows has a High Contrast mode that overrides colors, and has several themes including a dark and light theme. It sends the contrast and light/dark preference from that theme to browsers. It also sets
forced-colors
mode in web browsers, so if you useprefers-contrast: more
media queries to adapt your site’s appearance, it will only accept some of the styles you define in them. - No iOS devices to test, but I expect it’s probably similar to macOS.
- Next up: Plasma and other Linux desktops.
This article on Microsoft has some good examples of how you might need to adjust styles for the combination of forced colors, contrast, and light and dark modes – replace deactivated styles like box-shadow with a solid border, for instance, or ensure that color swatches aren’t overridden and appear on an appropriate neutral background.
Oh this is interesting!
LXQt doesn’t have an explicit dark/light switch, but it is fully themable. You can independently set the icon style, Qt widget style, Qt color scheme, panel/menu style, and optionally the GTK style. Some are dark, some are light, and some are high-contrast.
None of these choices would pass a dark preference along to any of the web browsers I tried, though you can set Firefox to use a dark theme and/or pass that along to web pages.
But if you select a high-contrast GTK3 theme, that preference gets passed along to Firefox. But not to Falkon or (since it was still installed) GNOME Web.
Went down a rabbit hole on differences between musl and glibc after reminding myself that Vivaldi only provides DEB and RPM packages for Linux, and the Arch package config I found that just extracts the contents of the RPM and repackages it for Arch isn’t likely to work on Alpine, since it uses the other C library…
Experimenting with some style tweaks on my reviews sub-site. Changing the background from very light/dark gray to full white/black, stuff like that.