http://www.w3.org/TR/2007/CR-CSS21-20070719/tables.html#height-layout
contains the sentence:
# In CSS 2.1, the height of a cell box is the maximum of the table
# cell's 'height' property and the minimum height required by the
# content (MIN).
I believe this is incorrect and should be changed to:
# In CSS 2.1, the height of a cell box is the minimum height
# required by the content (MIN). The table cell's 'height' property
# can influence the height of the row, but it does not increase the
# size of the cell box.
This is more compatible with the HTML table model, which the CSS
table model was designed to be compatible with. I think it also
provides a more useful behavior for authors, since it allows authors
to use vertical-align to align cells with specified heights, and it
avoids strange behavior if multiple cells in a row specify different
heights (which could cause, without the change, the one with the
smaller specified height to end up with its content in the middle if
it was given vertical-align:bottom).
A testcase for this is here:
http://dbaron.org/css/test/2007/height-of-cell-box
If the height of the cell box is influenced by the 'height'
property, then the cell box fills the entire row and there is
nothing to center according to the 'vertical-align' property. If it
is not, as I propose, then the text is centered vertically within
the box.
The following browsers center it vertically within the box:
Firefox trunk (slightly after 3 beta 2), Linux
Opera 9.25, Linux
Konqeror 3.5.8-9.fc7, Linux
IE 7.0.5730.11, Windows XP
Safari 3.0.4 (523.12), Mac OS X 10.4.11
Those were all the browsers I tested; I didn't encounter any that
placed the text at the top.
-David
--
L. David Baron http://dbaron.org/
Mozilla Corporation http://www.mozilla.com/