Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Why don't mobile apps use pure black for dark mode?
2 points by rahimnathwani 36 days ago | hide | past | favorite | 13 comments
I know I probably shouldn't read on my smartphone before going to sleep, but I do. My phone (a recent Pixel) has an OLED screen, so black pixels emit no light at all.

I would have hoped that dark mode would mean mobile apps for reading (e.g. Substack) would use a black background, but many of them use something almost black. But I don't want my phone to act as a flashlight.

Readwise Reader works well, except:

- Sometimes I decide I must read the original page (due to some formatting or features that don't work in the Reader view).

- (Sometimes only?) articles I sent to reader via email don't show up in Dark Mode, even if I manually select it

Firefox with the Dark Reader extension works well, except that the top and bottom bars aren't quite black (even though Dark Reader can make the page background black).

Am I doing something wrong? Or is my preference (pure black) unusual?




I can tell you my reasoning.

While developing the dark mode theme for my mobile app, I experimented with pure black background first.

It looked off.

I couldn't figure out why it looked off (design wise, but also seemed weirdly hard to read) until I played with a bunch of other mobile apps with dark mode (which I used already and liked) and noticed their backgrounds are not black.

Then I just tried a couple of shades of "almost black" and the improvement was huge - easier on the eyes and more pleasurable to read.

I don't have a scientific explanation why this is the case, just I wanted to kinda directly answer the question with my anecdotal experience of why I do it.


I’m a backend developer who’s trying to build up some rudimentary design chops and I’ve a consumed quite a few resources about design.

A lot of them say, pretty early on, “don’t use pure black or pure white, period”


Grey makes dark mode work better in the light; pure black + glossy glass screen = mirror, a good dark grey greatly reduces the mirror effect. I suspect I am not the only one who leaves things in dark mode all the time and has developed an appreciation for a dark grey over pure black.


For most people, reading lots of text on pure black background can be harsh on eyes. That's why they go for dark greys instead.


I wonder why apps and sites, both through the means of an OS, don’t use a contrast slider from -1=darkest..+1=lightest range, and also brightness and saturation, so that everyone could set a mode that is subjectively best for them. Because there’s no mode that is best for everyone due to how eyes work for different people and ages.

Even CRT TVs had these settings, but not modern smart-phones, which know not only every pixel’s value, but even semantics.

Also per-app per-site adjustments would be nice, in case some designer decides to force his preference through your color settings.


I can't post images but here's the accessibility text form:

Low IQ: black background, white text

Average IQ: 3:1 contrast as per W3C G145 recommendations. Dark gray background with a hint of saturation, light gray text

High IQ: black background, white text


How about astigmatism?


True, #fff on #000 might not be the best, but say, #ADADAD on #2B2B2B is a lot worse. The lower contrast version technically passes accessibility guidelines, but there's a reason why accessibility guidelines don't disallow the higher contrast colors.

A lot of these themes are being pushed by people who are senior designers and have done their homework, but as someone who does have astigmatism, I'd say low contrast is worse than high contrast.


The contrast between true black and white or even light gray font is just too harsh on most readers' eyes.


Because pure black doesn't exist in nature (well, save for black holes, that is) and usually is perceived as jarring. Common design principles therefore advocate for using a colour that's almost black.


The phone is a physical object. Some light will be reflected off the screen and components under the screen. Thus #000 isn't pure black anyway.


Because articles about CSS told us #000000 is not pure black. So they tell us to use grey. So #000000 doesn't get used even though it's supposedly grey not black.


Some apps have a "oled dark mode" too with true blacks.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: