- From: Robert O'Callahan <robert@ocallahan.org>
- Date: Thu, 14 Jan 2010 23:21:31 +1300
- To: www-style <www-style@w3.org>
- Message-ID: <11e306601001140221l7fcb22f1yec7a2ec846611a33@mail.gmail.com>
On Thu, Jan 14, 2010 at 2:02 PM, Robert O'Callahan <robert@ocallahan.org>wrote: > Our experience is that users do not expect the size of a CSS pixel to be > different from one screen pixel by default. They do expect that content such > as form controls will be displayed consistently inside the browser and > outside it. Therefore attempts to automatically have CSS pixels approximate > a particular subtended angle (which we have tried) are not appealing. Making > CSS pixels different from screen pixels is something users should opt into, > preferably via a system-wide setting that affects the appearance of all > applications (e.g., "UI scaling" on Mac). So the spec needs to permit such > an approach. > > Also, I think we have use cases for true dimensions. We might as well > ensure that 1px is 1/96 of an inch when printed, so that CSS absolute length > units take their expected values when printing. Exceptional circumstances > like printing massive billboards would be ... excepted. And for screen media > I think we still have the use-cases of touch interfaces and "life size" > diagrams which deserve a "true" unit. Let me recapitulate... How about the following definition for CSS pixel: For print media intended to be read "at hand", a CSS pixel should be rendered as 1/96 of an inch. For all other media, including print media not intended to be read at hand, e.g., billboards, the user agent should size a CSS pixel so that it subtends a angle to the eye approximately equal to 1/96 of an inch at arms length; however, the user agent may take into account user-agent-specific constraints such as display technology, user preferences, and consistency with other applications on the same device. Then we can define the CSS absolute length units: 1in == 96px 1pt == 4/3px 1pc == 16px 1cm == 96/2.54px 1mm = 96/25.4px Define "truemm": "truemm" is defined to correspond to physical millimeters in all media. For extremely small or large output surfaces, or when the physical media characteristics are unknown, the user agent may use an approximation. Rob -- "He was pierced for our transgressions, he was crushed for our iniquities; the punishment that brought us peace was upon him, and by his wounds we are healed. We all, like sheep, have gone astray, each of us has turned to his own way; and the LORD has laid on him the iniquity of us all." [Isaiah 53:5-6]
Received on Thursday, 14 January 2010 10:22:03 UTC