Images serve to make a website beautiful. Dithered images are not - in my mind - beautiful. There are other ways to optimize a website speed and bandwidth. Let's serve devices the image resolution that they can handle and not an XL image just because we can. Let's minimize JS cruft, minimize excessive renders. Sacrificing image quality would be near the bottom of my list.
Anybody who used a cheap PC in the 90s knows how horrible everything looked. It was a low-res dithered hell. I don't understand why anyone thought that gradients on a 256 color screen ever looked good, and wonder why we didn't have the modern, flat, solid color designs that are fashionable today back then.
> wonder why we didn't have the modern, flat, solid color designs that are fashionable today back then.
I really, really, dislike the modern flat colour designs of today. They make it much harder for me to separate out what I care about, like context and information, because my eyesight isn't perfect.
Gradients made it so much easier for me to see the difference between a tab and the bar it's sitting in. A little strip of colour or some shadowing, to denote the active tab just disappears for me.
I'd rather have flat colors for background elements and bevels for "active" UI elements like buttons and checkboxes. NEXTSTEP-derived UIs (like Windows 9x) were razor sharp and easy to read... and it's funny how futuristic cyberpunk UIs, like the non-VR interfaces featured in Johnny Mnemonic, were envisaged as being more of the same -- maybe a drop shadow or marble texture on the beveled button -- instead of the indistinct flat-shaded hellscape of today.
Those little strips of color don't need to be shaded, though. You could do what Windows XP did with tabs—highlighting them by running a line of bright shining highlight color along the top (e.g. https://www.techrepublic.com/a/hub/i/2008/11/19/b8ad3817-c3b...).
(I'm sure there are even better examples of this "no gradients, but strong color contrast" effect among the various Linux Desktop Environment themes, but I'm not too familiar with them. Paging anyone from /r/unixporn.)
Presuming the active tab is flat white either way; what's the difference in legibility between the inactive tabs being gradiented white-to-grey (the XP Windows controls style) vs. inactive tabs just being flat grey (the "modern UI" e.g. Google Chrome style)?
I would note that Windows XP also had a high-contrast theme; and that, when enabled, inactive tabs actually lose the distinction in background color from active tabs. But they keep the highlight stripe.
To try and put it another way, imagine, for a moment, that you are incapable of perceiving edges. Every single one of your flat tabs now looks like the same part of the same blob.
Now, realise that for a pretty high number of low-vision people, that is reality. The slight blur we experience makes most edges disappear.
(WinXP's high contrast overcame this by tripling the size of all edges).
Wouldn't the inactive flat tabs all still end up looking like one continuous blob either way? The gradient on the inactive tabs in the image I linked is a top-to-bottom gradient; it does nothing to enhance the visibility of the edges between contiguous inactive tabs.
>and wonder why we didn't have the modern, flat, solid color designs that are fashionable today back then.
A lot of UI design on computers of the era was flat colors, maybe with a mild gradient. Go look up screenshots from Windows 3.1. Everything is flat grey or white. Windows 9x wasn't really much better, except it had that ugly solid teal background.
Also, dithering on a CRT produced a very different effect from dithering on a high-res LCD.
IIRC the color gradients only started to appear once PCs which could display "True-Color" (or at least "High-Color") modes were widespread enough. The original Windows 95 definitely didn't use them yet.
And the "modern flat solid color designs" still use stuff like subtle shadows and transparencies that would have been either impossible or wouldn't have looked nice in the nineties...
Website exist to convey information, image are used to help convey information which is not easily explained otherwise. Using images to make pages beautiful is, to me, part of the problem with modern websites.
I happen to like the dithered look, but arguably it might not be the best way to save on bandwidth.
> Let's serve devices the image resolution that they can handle and not an XL image just because we can.
I would be all for this, but I frequently find myself pinch-zooming into images on my phone to more closely examine the details in them. If the site assumed that I would only see what's visible in the image at the initially-rendered aspect ratio, then zooming would reveal nothing (e.g. text that's small and blurry, would just become large and blurry, rather than crisp.)
Ideally, a browser would be able to notice when you've zoomed into an image element past its Nyquist frequency, and async-load a higher-quality version of the image, swapping it out once the loading's complete. Do any browsers do this yet?
It doesn't just look bad when it's still, it's actively distracting while scrolling due it causing flickering. The only time dithering should be employed is to get rid of nasty banding. Otherwise just serve lower resolution images or use tricks that aren't nearly as noticeable like compressing the chroma more than the luma.