W3C home > Mailing lists > Public > www-style@w3.org > April 2004

Re: line-height: <length> should be revoked

From: David Woolley <david@djwhome.demon.co.uk>
Date: Tue, 13 Apr 2004 08:31:55 +0100 (BST)
Message-Id: <200404130731.i3D7VtB00548@djwhome.demon.co.uk>
To: www-style@w3.org

> That was the claim, yes.  Which part is counter-intuitive, though?

It's counter-intuitive because people expect to be able to control
font-size using only font-size properties.  That is how word processors
typically work, and the original design aim of HTML was that it was
for use by anyone, not just for people with tyesetting training 
(that was left to pre-existing tools that were aimed at that market).

In particular, like the WYSIWYG model so much that it is well known
that they don't use H1, etc., and will try to directly control
font-sizes.

> 
> > and it also encourages "pixel perfection"
> > authors to specify line-heights in absolute units[1]
> 
> Where is this encouraged?

It encourages them by forcing them to specify line-heights.  Once
they specify line heights, as they are pixel perfectionists, they
will naturally specify absolute pixel line heights; rather than saying

font-size: 5px; line-height: 1.2em

they will say:

font-size:5px; line-height: 6px

(hopefully not with something as small as that, although some fonts
seem to attempt it).  When I specify a 12pt font and disable font sizes,
I will get, say, 16px high characters with baselines spaced by 6px, in IE.

> > It does, however, seem to me that the browser default style sheet can
> > override the problem inheritance
> 
> How so?  What rules would you place in the UA sheet to do so?

* {line-height: 1.2em;}

This effectively negates the specified inherit default on line-height, but
line-height is the more technical parameter, so is where any counter-
intuitive behaviour should go.  (It wouldn't surprise me if the inherit
default was the result of the same mistake that produced the error in
the specimen style sheet noted below.)

> Yes.  Note that this is corrected in CSS 2.1, which only uses number 
> line-height values in the example style sheet.

The particular point is that CSS 2.0 only specified it on the body element
and that it shows that even people familiar with the language are confused
by this one.
Received on Tuesday, 13 April 2004 03:49:45 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 27 April 2009 13:54:29 GMT