W3C home > Mailing lists > Public > www-style@w3.org > February 2012

Re: [css3-values] Physical length units

From: Boris Zbarsky <bzbarsky@MIT.EDU>
Date: Sun, 19 Feb 2012 10:54:50 -0500
Message-ID: <4F411B4A.7050203@mit.edu>
To: Matthew Wilcox <elvendil@gmail.com>
CC: www-style@w3.org
On 2/19/12 9:30 AM, Matthew Wilcox wrote:
> The fact that cm etc don't result in those units is what is super
> confusing. Why in the world would any author expect 1cm to *not* be
> 1cm, and know to use 1trucm instead?

They may not.  But they expect 12pt to be 16px, not actually 12pt.  They 
expect this because that's what every single word processor they used 
did and what most browsers did.

Furthermore, authors tend to code by copy and paste as well as 
guess-and-check.  This is good because it allows someone with minimal 
HTML or CSS knowledge to create web pages, but bad because it means that 
when someone writes "12pt" chances are they didn't _mean_ anything; they 
just wrote something that worked.

OK, so your options are then as follows:

1)  Make 12pt actually be 1/6 of a physical inch.  This has been tried, 
and it breaks pages.

2)  Make 12pt actually be 16px but make other "physical" units not match 
pt.  So 1in would not be 72pt.  This also breaks some pages, actually, 
and is ... somewhat surprising to authors.  They get surprised when they 
write CSS and things don't match up, in particular.  There are variants 
of this where maybe you make 12pt be 16px and 1in be 72pt but leave 1cm 
as a physical cm, of course.

3)  Make 12pt be 16px and change all other physical units to match. 
This is also somewhat surprising, but only to someone who pulls out an 
actual ruler and measures.  As long as you don't do that, things are 
self-consistent.

Note that all this was discussed to death; I'm just summarizing so you 
don't have to find it in the archives.

In any case, the working group discussed this at length and settled on 
option 3.  All UAs now implement it interoperably.  Are you seriously 
suggesting changing things again?  If so, to which of #1 and #2?


> If the vendor-prefix 'thing' has
> taught us anything it is that the vast majority of authors do not read
> specs - those people go on gut reaction and logical extrapolation.

It's "gut reaction", "guess and check", "copy-paste", and "logical 
extrapolation", in that order.  The "logical extrapolation" part is 
pretty rare....

> CSS units are broken, a deep understanding of technical considerations
> should not be required in order to achieve a 1cm line when you've
> specified a line to be 1cm.

The vast majority of people using units are not trying to achieve 1cm 
lines.  They're trying to size boxes to match fonts and the like.  And 
they've been taught for literally decades that fonts are sized in pt. 
And they want to size their boxes in px.  And they _know_, again due to 
decades of experience, that 12pt == 16px.

> Please can we re-focus on sane semantics and remember that the
> internal implementation difficulties are our problem to fix?

The issue here is deployed content and sane semantics, not internal 
issues of any sort.  See above.

-Boris
Received on Sunday, 19 February 2012 15:55:18 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:20:50 GMT