Please, stop forcing a dark theme on a web-site visitors
Web services and sites really should stop using dark theme forcefully matching it to a browser or system dark UI theme. Users often use dark theme to distinguish UI from content, not blend content with UI. Properly speaking it's not very user and eye friendly to read for long white text on a dark background. Sites that automatically force a dark theme on visitors remind me of a noob user that learn a new colorful style trick in Word processor who starts applying it in every document.
It's good if a site offers dark theme option via some kind of switch but forcing it on visitors is not the brightest decision. E.g. browser version of Google Books automatically force dark theme while reading a book in case a browser uses one for UI.
More and more I notice that sites do that. And often they even don't offer option to switch the site to a light theme. They just use a browser's UI theme as a guide. It requires to switch a browser to a light one for such sites to use light theme. Thankfully, Google Books offers an option to switch but it's annoying to do it every single time I open it.
Dark UI is to distinguish from, not to blend with content.
84 comments
[ 3.5 ms ] story [ 143 ms ] threadIt should be up to the user: the browser should let the user select which theme preference to pass on to websites. Magic extensions like Dark Reader should turn themselves off when the site is using its own dark mode.
While we're on the topic of browser/site misbehaviour: Sites that presume that my full-screen portrait mode browser is a mobile device need to die in a fire. I do not need big buttons and a hamburger menu on my desktop monitor. WTF don't they have a device-type-query instead of guessing by aspect ratio?
Here's an example screenshot I took the other day of the HN frontpage. Chrome with FDM on the left, Firefox on the right: https://imgur.com/a/TiNxsR6
As should sites that render font-size such that I get the exact same number of characters per screenful on a phone or tablet. I don’t need giant characters on my iPad, the focal distance is approximately the same, and it’s a waste of screen real estate.
Uhm, no? It's the exact opposite. Nothing worse that opening a website in the middle of the night and it burns your retinas because it has pure white background. I have a dark theme on everything, of course the website should adapt. What's the point of dynamic web otherwise?
Isn't this an example of an abundance of empathy? If the user has requested dark-mode, websites responding with their best version of a dark-mode experience is an example of user empathy in action.
I operate in dark-mode 24/7 myself, and I've been pleasantly surprised at websites slowly supporting a dark-mode experience and automatically showing that by default.
There should probably be a one-click "override dark/light mode on this site" button somewhere, so that you don't have to dig into your OS to change it back. But the defaults here seem like the most reasonable, most user-respecting thing that could possibly exist.
That is literally what you are proposing though. That website creators should force their creation on everyone else and even though the user has clearly signalled that they want to be in dark mode, they should disregard this preference.
Picking dark mode is a choice, and websites should respect that choice and adapt to it. Not doing so is "forcing on everyone else your understanding of the world".
No one is changing the default. Websites are merely respecting YOUR choice.
>>The safer bet would be to provide a choice but keep defaults to general (light)
This is literally how this works already - default is light theme, changing it to dark theme is a choice - I still don't understand what your issue here is.
How is the website supposed to know you prefer the content to be light but the UI to be dark?
Just change your browser settings.
Why should this be different from say view scale? Should a website override the user's zoom level and render tiny fonts because it wants to? It doesn't, because the browser tells it what scale to use. Same with light/dark modes. Your issue is that your browser doesn't let you configure this one setting, not that every single website on the entire internet doesn't implement what you want.
Websites that only have a dark mode regardless of user preference I can agree are problematic, but even there I think more context is needed. A personal blog that is only available in dark is probably fine, an email client from a large company would not be.
Possibly browsers could offer per site prefers-color-scheme values, and that would probably solve the problem you're having. Even better, it'd solve it with no changes needed for current websites.
So, what I should change to have dark browser UI, but light web-sites? I change theme of UI in browsers setting, not what content is delivered. Two big differences.
Last time I checked prefers-color-scheme in Dev Tools is for debugging only and there is no dedicated "prefers-color-scheme" in browser settings.
What you want is currently not possible. The web community currently does not see your use case as necessary or in demand. Maybe they are wrong. But again, blaming the websites for this who are just following the standards set for them is misguided.
There is no need to force dark theme in the absence of enough information from a browser as to exact user preferences. Browser doesn't ask for anything. It just says what UI theme a user has. It's a web-site that makes a conclusion based on limited information and then decides to force dark theme on content.
Hence, my post here is to show this situation.
Doesn’t look like a debug only feature to me
You are free to have an opinion, but I'm so confused as to why you're not understanding that it's a minority opinion and that the way things work currently actually do make sense.
It seems to me like you're just not handling disagreement very well, and that might be something to work on for the future. Especially if you're going to post your opinion publicly.
“Why don’t you stop hitting yourself with a hammer?”
“Hammers exist to be massage tools. It’s the manufaturer’s fault, they should make them softer. I know lots of people are disagreeing with me, but they’re just a vocal minority, the silent majority want soft hammers!”
o___O
If it's obvious to everybody that these content preference signals from a browser lack crucial information as to distinguishing between UI and content preferences, maybe it's safer to keep standard default (usually light) and just offer and option to switch to dark theme in case a user wants and remember preferences locally till the next visit.
There is no need to force dark theme in the absence of enough information from a browser as to exact user preferences. Browser doesn't ask for anything. It just says what UI theme a user has. It's a web-site that makes a conclusion based on limited information and then decides to force dark theme on content.
Hence, my post here is to show this situation.
What you want is light mode but to use a dark theme on your native UI. You can easy change that in GTK and QT and I remember it was possible to do in older versions of Windows. That will not change the prefers-color-scheme in your browser.
If you want your browser in light mode but the rest of your system in dark mode, that's a niche need, and not a preference you should be trying to force on the rest of the world.
> Dark UI is to distinguish from, not to blend with content.
This is how you view Dark UI. That is not how I use it. I like the dark aesthetic and am using a system-level dark mode to universally apply that aesthetic. Native Apps pick it up automatically, and I'm glad websites can as well. Frankly it would be super annoying to have to manually opt-in for a dark mode for all the websites I visit.
Dark mode can be preferable on an emissive display. I don't generally prefer it, though there are some sites using a darker display mode (Mastodon's web client comes to mind) which I prefer to their light modes ...
... unless I happen to be visiting on my e-ink device. That's 1) not emissive (it is visible under reflected light), and 2) display quality is far superior in dark-on-light than light-on-dark mode.
Keep in mind that I might be useing that device on its own (it's effectively an Android tablet) ... or in its mode as an additional display alongside an existing emissive screen. Which means that on the same computer, using the same Web browser, I could have a preference for either a light or a dark mode.
I've been noting several sites which (despite no "prefers-dark" browser setting) default to a dark mode. ArsTechnica and Nitter both come to mind. (Both offer a toggle to a light mode).
Mastodon is configurable when logged in, but when visiting instances unauthenticated, both defaults to and doesn't provide an alternative for dark mode.
Then there are the sites which present various non-black-on-non-white colour schemes, which includes Hacker News. If these are relying on colour to differentiate foreground text from display background, it fails entirely. At best I get a palette of greys. My e-ink device delivers a 16-shade greyscale colour depth, and the result is at best difficult to read, if not entirely unreadable.
Presumptions about colour, colour support, and user preferences are ... risky.
Incidentally: this is one domain in which terminal-based applications shine. I set my terminal to the font face, size, and colour preferences I want ... and all applications follow those. If there's tuning required (the w3m Web browser is a case in point), that application can be set once, and all uses inherit the relevant pallete.
Web design isn't the solution. Web design is the problem.
I do of course agree that choice is good and sites should allow users to switch to a light theme.
Perhaps this type of functionality (perhaps limited to toggling the prefers-color-scheme setting) is something browsers should consider baking into the default UI/Chrome.
The browser is doing what works for similar broad preferences (eg: language). If you think browsers should offer a knob to turn off forwarding you color scheme preference that is reasonable.
What is not reasonable is to encourage sites to ignore content negotiation signals from the browser and rely only on site level controls. The behavior reduces the friction of the web and is a net win for the user.
If it's obvious for everybody that these content negotiation signals from a browser lack crucial information as to distinguishing between UI and content preferences, maybe it's safer to keep standard default (usually light) and just offer and option to switch to dark in case user wants.
Hence, my post here to show this situation. There is no need to force dark theme in the absence of enough information from a browser as to user preferences.
In the case of web apps I think is reasonable, if budget permits, to ship a dark theme to please users. But a website? Total different thing.
web app != web site
UI != content, but for some reason they are often treated as the same thing.
Err, no. I use dark theme because I like dark themes. But I do think the OS should give you more options, like multiple colorblind modes like some modern video games do.
This honestly feels like you're using your operating system's dark mode as a way to theme your PC. It's not intended for that purpose, at least to my knowledge. I use it as often as possible because it's easier on the eyes, because I like the aesthetics and because I feel like I can get to sleep quicker after using a dark theme for a while.
You should direct your anger at the lack of theming options in your operating system if choice rather than at applications following the standards that tell them to render things in a dark theme. Skin your operating system in such a way that the UI is dark and distinguished without setting the accompanying "dark" flag and you should be golden.
If your favourite OS vendor doesn't care, direct your anger at the applications lacking the necessary configurability to disable this feature. In Google Books on Android, you can change the reader font and background to either style. In Firefox, you can set ui.systemUsesDarkTheme to 0 in your about:config to make it stop reflecting your dark mode settings.
When I visit a dark theme website, all is good for maybe half a minute or so. As you say, less light hitting your eye is somewhat pleasant. But then, somehow, the eye strain starts. My eyes seems to defocus, and it becomes harder to make out letters. I have to squint, and after maybe a minute that no longer helps. If I don't stop reading then, but keep going for a few more minutes it gets progressively harder. Then when I look away, I am blind.
No kidding, can't see a thing, just a grey blur everywhere. Takes several minutes to get back to normal.
I have no idea how common this is. I asked an optometrist about this once, and she looked at me like I was from Mars.
Dark themes are not the solution for everyone, and default dark themes everywhere is my personal nightmare.
I don't understand the inner workings, but I get the impression that there is some fuckery going on when keeping the same distance to the screen and heavily diminishing the amount of light reaching the eyes. There may be a threshold (varying among individuals) beyond which the pupils become too open to clearly focus on the text.
I have a slight photosensitivity and most outdoors daylight conditions are too much for my naked eyes, but many dark UIs are too high or too low contrast and feel worse for extensive reading than their light counterparts in a screen matched to a moderately illuminated room (and this also also includes changing screen settings to match environment light conditions when switching between light/dark themes, not just trying with the same settings).
This leads to a life where my screens are stoically dimmed way past their sweet spot most of the time. Colors suck a bit, but at least I can always focus on light UIs without strain and it avoids text persistence (burn-in) in the eye.
Lately I'm trying GitHub Dark (not Dark Default) in VSCode for dim environments at night; it's the lesser offender while retaining some legibility/contrast. Dark Discord seems bearable for a while, too.
The aesthetic is fine if you want it, but websites should stop cramming it down everyone’s throat.
While I’m at it, stop it why the freaking wave emoji in your profile.
I don't think anybody would disagree that a manual toggle makes the user experience even better, but since it's not a part of the browser standard, it isn't zero-cost either. It has to be implemented in code (and incorporated into the layout, etc). Does it get associated with the logged-in user's account? If so the full stack has to be roped in; a new database column may be needed. You could just put it in localStorage, but then if the user switches to another device they could be surprised by the fact that this preference doesn't follow them.
It's definitely a nice-to-have, but demanding it as a hard requirement comes across as pretty entitled.
A better framing would have been "Hey web devs, there exist people who specifically want their web content to have a different theme from their system, it would be nice to have a manual toggle even if you already support prefers-color-scheme". It's something that never would have even occurred to me, personally, and so this could have been an illuminating post instead of a rant.