RE: Line layout in browsers

Bruno Fassino wrote:
| If you add a bordered span wrapping your text, you will see that 
| this span (which I believe delimits what the spec calls content 
| area) is correctly vertically centered in the inline box. Your 
| glyphs are apparently appear low inside this area, but if you 
| consider that there are characters with a higher ascent that 
| those that you used (like È) then all looks correct (that's your 
| page with these additions http://brunildo.org/test/test/lh_span.html .)

Yes, testing a font for which I have metrics (and including Ô and some underlining in the text), I'd since confirmed that the text is centered on the height of the bounding box (half-leading = .5 * (container height - bounding box height)). Which brings up the question: For whom is CSS intended? For me, inserting space - with no option to eliminate it - for rarely (if ever) used characters is not good behavior because it precludes positioning that is more suitable when only a subset of glyphs - such as all caps English language, for example - is used.

I vaguely recall some discussion about this back in 1999 (I've been away from the list for a long time), at which time I posted an image of three positioning options (http://www.hpaa.com/css1/font-position.html). Can you honestly say that the last - positioned on the space between ascenders and descenders - isn't the most attractive in this instance?

Methinks what is needed is a text-align-vertical property to describe how a line of text is centered with respect to the line box. The property would have 5 options:

   bbox | xheight | capheight | ascdesc | <length>

where bbox centers on the midpoint between the top and bottom of the bounding box (default), xheight centers on the vertical midpoint of a capital letter, ascdesc centers on the midpoint between the ascender top and descender bottom, and <length> centers on a point above (positive) or below (negative) the baseline (0 centers on the baseline).

David Perrell

Received on Thursday, 24 January 2008 01:10:41 UTC