Remix.run Logo
notatoad 11 hours ago

what the spec says doesn't really matter though, the spec is just nonsense people wrote down to try to back-explain decisions that the browsers had already made.

pixels are pixels, and no browser implements them as a fractional-inch measurement. in every actual implementation i'm aware of, they're a hardware based unit.

edent 11 hours ago | parent [-]

They aren't hardware based. As I say in the first link, pixels mostly don't exist in hardware.

Screens very rarely contain a matrix of individual squares.

For example - https://global.samsungdisplay.com/29043/

jonhohle 9 hours ago | parent [-]

Pixels very much exist in hardware outside mobile. Microsoft’s clear type even exploited the specific layout of color channels in discrete hardware pixels. Mobile displays are all over the place, but most other displays use standard RGB layouts.

edent 7 hours ago | parent [-]

You've described the exact problem. Sub pixel rendering exploits the fact that most display pixels aren't discrete logical squares.

https://en.wikipedia.org/wiki/Subpixel_rendering

SR2Z 7 hours ago | parent [-]

Right, but there's still an addressable set of display units that convert an RGB signal to actual glowing lights, right?

It seems like defining px to be perceptual is one of those compatibility hacks that probably helped a ton back in the day, but we have perceptual units and now we're stuck with that baggage.

I don't have much of an opinion on this (I use em) but it has taken me by surprise a few times.