- From: Boris Zbarsky <bzbarsky@MIT.EDU>
- Date: Mon, 31 May 2010 00:26:14 -0400
- To: www-style list <www-style@w3.org>
Section 17.5.3 has this to say: The baseline of a cell is the baseline of the first in-flow line box in the cell, or the first in-flow table-row in the cell, whichever comes first. If there is no such line box or table-row, the baseline is the bottom of content edge of the cell box. However nothing defines when line boxes are or are not present. If a block contains only non-preserved whitespace, does it have any line boxes? The end of section 9.4.2 suggests yes[1], but Gecko and Webkit seem to think the answer is "no"[2]. Opera seems to think that even an empty block which has no child boxes at all has a line box. It would be good to get this clarified, since this affects vertical alignment of both table cells and inline-block elements and currently we seem to not have very good interop here. -Boris [1] "Line boxes that contain no text, no preserved white space, no inline elements with non-zero margins, padding, or borders, and no other in-flow content (such as images, inline blocks or inline tables), and do not end with a line feed must be treated as zero-height line boxes." though this really does beg the question of whether said line boxes exist at all; they just have to be treated as 0-height if they do exist? [2] Testcase: <div style="display:table"> <div style="display:table-row"> <div style="display:table-cell;background:red"> <div style="width:150px;height:150px;background:blue"> </div> </div> <div style="display:table-cell;background:green">a<br/>b</div> </div> </div>
Received on Monday, 31 May 2010 04:26:49 UTC