Isn't most of the text on the page grey? It's not white, it's rgb(215,215,216). And the background is not black. Some worse examples are shown, but then the message comes across as "don't use grey unless you know what you're doing, like I do, because I'm using grey while I tell you not to use grey, but mine is okay."
Maybe aside from the unset option, something more specific about a minimum contrast threshold would be useful. Ideally the author wouldn't be breaking below that threshold themselves while explaining it.
That, plus the line "Or, you could just not do it [change your colors with CSS] in the first place which would look like this:" — followed by a super-duper-CSS-styled box thingie full of gray text.
Indeed the WCAG guidelines provide the following criteria
* The visual presentation of text and images of text has a contrast ratio of at least 4.5:1, except for the following
* Large Text: Large-scale text and images of large-scale text have a contrast ratio of at least 3:1
Grey is not the problem. Low contrast is the problem.
WAVE shows that light mode is 0000ff on ffffff, for a contrast of 8.59:1.
For my tastes,
that's a bit too much contrast,
and I'd prefer the background be very slightly off-white, around fafafa.
The example "grey text on an off-white background." is 6D6D6D on EFEFEF, for a WCAG failing contract ratio of 4.49:1.
Amusingly, the paragraph near the end of the article that begins "Truth is stranger than fiction.." is not flagged as failing.
It's 6D6D6D on FFFFFF, for a ration of 5.17:1. That passes WCAG AA but fails AAA.
In the absence of reflected ambient light, the contrast ratio of black to the dimmest non-black color on an OLED display is infinite, but that doesn't mean black-on-darkest-grey text is necessarily readable, even in a perfectly dark room.
The background is indeed not black, but if it isn't actually white then it's close enough that the text, which i'm sure is indeed mostly actually grey rather than black, shows up well. I've seen worse.
There's pretty much nothing in the natural world that has the contrast ratio a modern screen can produce. It is easier on the eyes to not have blindingly high contrast.
No printed page in any book or magazine you've seen has ever had contrast ratio a screen can show. It's just not possible to do.
Legibility can be an issue, and is good to discuss. I agree that when something like "@media (prefers-contrast: more)" is set, text should be at a higher contrast level for those with lower vision. But don't blind everyone else in the process.
>... the amount of times per day I ask myself if I’m literally going blind, only to find out the “designer” decided for me how I should best read their website.
Yes? That's what the designers of literally everything do, decide how it will be presented to you. The magic part of HTML/CSS is you can change that to suit your needs.
> There's pretty much nothing in the natural world that has the contrast ratio a modern screen can produce.
The natural world has much better contrast than the majority of screens. Not everyone has or affords a Mac Retina display.
The main issue is, that, since some 10 years, UX experts appeared who pushed away configurability in favor of gray on gray ( remember when you were able to select the background and foreground color ?).
The majority of screens have crappy contrasts (100:1).
Paper and ink have at best, a ~15:1 contrast ratio (bleached white paper and black ink).
> The majority of screens have crappy contrasts (100:1).
No idea where you're pulling this from. A MacBook Air display from 2010, a very average non-retina screen, has about 300:1. A modern MBA is over 1000:1 real-world contrast performance. A very average quality budget TN display from 2010s is 500:1.
I could not find a phone or desktop display at my local retailer with stated a contrast ratio lower than 1200:1 (stated vs real world will of course be different, but not hugely).
I agree apps/websites should take into account user preferences (with things like 'prefers-contrast' in CSS). I saw a great example recently where a website had a light/dark/hi-contrast toggle... but on first visit it defaulted to the one based on current system light/dark mode and 'prefers-contrast' indicators.
We can have both text that's easier for most people eyes and higher contrast and/or larger text for those who need it.
The idea that "nothing in the natural world has the contrast of a modern display" is backwards and keeps being repeated. The real world has far more contrast than any screen that can be manufactured.
Think about standing outside on a sunny day. The sunlit pavement might be tens of thousands of times brighter than the shadow under a tree. Look up at a bright cloud and then glance into a shaded doorway. Your eyes can still make out detail in both. The dynamic range of the real world the ratio between the darkest and brightest things present at the same time is enormous.
Cameras struggle with this. When you take a photo, the camera can't always capture both the bright sky and the dark ground correctly at the same time. Either the sky blows out to white or the shadows become black. That limitation is why HDR photography and exposure bracketing exists.
Even modern digital cameras still capture a far wider range of brightness than most displays can show. That's why we use tone mappers in photography and video. Tone mapping compresses the huge brightness range captured by the camera so it can fit onto a display that only has a tiny slice of that range.
So screens are not "more contrasty" than reality. They're the opposite. Displays are a bottleneck that force a very wide real world brightness range into something much smaller.
Your eyes are also incredibly good at adapting. If you look at a white page of paper in sunlight and then look at black ink on it, the contrast between the two is extremely strong. Snow in sunlight next to a dark rock is another example. Nature is full of intense light and dark differences.
When web developers avoid strong contrast because it feels "unnatural", they're misunderstanding the physics and the biology. High contrast between text and background isn't artificial at all. It's actually closer to how humans evolved to see clearly: dark shapes against bright surfaces or bright shapes against dark ones.
The real ergonomic problem with screens usually isn't contrast between text and background. It's screen brightness relative to the environment. Many people run their monitors far brighter than the room around them. If a screen is glowing like a light source in a dim room, the whole display becomes visually harsh and fatiguing. In ergonomics, the usual advice is to match the screen's brightness to the surrounding lighting so the display feels like part of the environment rather than a flashlight in your face.
When display brightness is set appropriately, strong text contrast simply improves legibility. The discomfort people blame on "too much contrast" is often just a monitor that's set far brighter than it should be. Reality itself contains vastly wider brightness differences than any display, so high contrast text isn't unnatural at all. It's a practical way to make information clear within the limited dynamic range that screens can actually show.
Sorry. I really meant that there's nothing people are reading or viewing that has higher contrast in the natural world. I should've been clearer (and less forthright).
Your points about day/shade contrast and eyes adjusting are correct, as are screen brightness levels people use.
> Look up at a bright cloud and then glance into a shaded doorway.
Yes, and that causes strain on the eyes. Our eyes very are good at adapting (as you said), but it is not pleasant to do rapidly or while trying to concentrate and interpret text.
Bleached white paper and black ink is (pretty generously) ~15:1 contrast ratio in a well lit room, which any half decent screen in the past 20 years surpass.
Pure black/white text is harder to read on screens since they are producing and pushing light at you (as opposed bouncing back ambient light like on paper). We have never seen text printed on paper at the contrast ratios a modern screen can produce, since there is no paper white enough or ink dark enough.
There are many things with typography that are finicky and sometimes counter-intuitive. Making text bigger and all-caps won't always make something more readable (see here: https://www.mentalfloss.com/transportation/roads/why-road-si...), likewise more contrast doesn't always make it more readable for everyone.
Of course there are people who require more contrast and larger type sizes and the great part about reading stuff on screens is we can often accommodate that better. Some websites/apps/etc handle accessibility options well and some really don't.
So I kind of went on a much longer thing than I wanted to... oh well. Sorry if I was too forthright in my initial comment, I guess clarity in intent/meaning can be just as important as readability.
The article could have been more useful if its point was just 'use sufficient contrast'. As it is, the article is overly prescriptive, and feels like trying too hard to be sensational or cute.
I was reviewing a confluence page which was reviewed my many stakeholders. Something bugged me to an excruciating extent about the content of the page: something was off at some parts of the text. I inspected the page and it turns out the font color somehow changed to a mildly grayer color than black. This was likely due to a copy-and-paste that has gone wrong.
This problem has been haunting me for years, except in Google Docs. At some point, some template my team used had slightly gray text, and I STILL find it cropping up in our most recent documents.
But the author of that page is not concerned with readability or accessibility. He just wants things to look cool and design-y. One piece of supporting evidence he cites is some random photo he took that doesn't contain #000000 black. That doesn't mean anything, it could be that it's over-exposed, or has poor contrast, or had some silly filter applied. This leads me to think that the author of that page doesn't know what he's talking about.
So you routinely encounter photographs that have noticable areas where sensor did not receive any light during exposure? To the point where you feel not having completely unlit parts of a photo is a sign of over-exposure or filters? Are you an astrophotographer?
Wow, I was searching for this exact link for more than a decade (!). I remember seeing it on HN when I was new here and couldn't find the article ever again. Thanks for sharing!
This is why I still use the marquee tag. It catches people's attention right away! Much more so than grey text on grey background could.
I do use pink for it though, usually pink on red or yellow background.
It makes people feel more engaged and they write all sorts of happy
emails about how epic blinking pink on rainbow ponicorn background
wallpapers are. The 90s were a great time for the global internets ...
WCAG color contrast checkers in particular have never steered me wrong. It's interesting (but makes sense) that contrast needs to be higher for small text than for large text!
Yes, I wish sites that use grey text should be investigated as part of the US disability act.
People with even minor sight issues can have a hard time with sites designed that way. When I run across a site like that I usually try it in lynx, if the site does not work in lynx, I block it on my system so I would not waste my time with it.
> I actually believe increasing contrast for everyone improves the information density of our content.
You used css to change the pointer. So instead of the I-Beam I had to use a regular pointer to select that text. Information density is nice but information access shouldn't be compromised either.
Aside from that, while this is true, I'd think you'd then want something better for your users than "font-family: system-ui".
Well, as long as you're not going to decide to make the dark background lighter to accommodate the brighter text...
But I would be in favor of sites using variables more so that personal customization is easier. But often this goes against their desire for "branding".
Blue hyperlinks. Purple hyperlinks after you had clicked them. Images with the blue hyperlink border. Tables with Extra Chonky borders. Row and Col span. Guestbooks.
The number of PowerPoint and slide presentations I sat through with sans serif white and yellow text on a dark purple background still gives me nightmares. For my presentation I went black over medium-light grey. The audience sighed with relief.
I created a ycombinator account after years of resisting, just to respond to this post.
Stop creating web pages with huge-ass gutters/margins.
If you are concerned about design you would realize your page looks ridiculous and borderline illegible on modern screens (that are not phones). Text color is an issue, but layout is worse.
This doesn't seem too far off from ~80 characters per line, which I believe is best practice for readability. Though you could make the column wider and bump up the font size and it would be even more readable.
They have huge gutters and margins, and not-quite-black text on creme/off-white/never-actually-white backgrounds... why? Because it's easier of the eyes for long blocks of text.
Depends on the width of the browser window. Wide margins that are welcome in a full-page browser on a large or ultrawide display are cancer when I'm tiling windows 2 or 3 up on a smaller or narrower display.
This ship has sailed a long time ago. The idea of "low contrast is good for the eyes" was popularized among designers well over a decade ago, together with another one that tiny fonts are elegant (I read HN at 120% and I don't wear glasses).
Everyone should just use something like DarkReader to make these problems go away. Web devs who fiddle with the colors are annoying, but at least they are easy to ignore.
Screen brightness is a pretty important contributing factor. If you have this problem a lot, verify your screen is bright enough. ( Regardless of his point )
While we're wishing, let's bring back serifs. I, for one, would like to be able to tell the difference between AI and Al without context clues, and using an inherently lossy font is the opposite of "readability".
When I saw yet another crooked google font I configured my browser to display all text in Verdana ignoring fonts chosen by page styles. It's much easier to read when everything is in one font to rule them all.
Maybe aside from the unset option, something more specific about a minimum contrast threshold would be useful. Ideally the author wouldn't be breaking below that threshold themselves while explaining it.