[css3-flexbox] spec contradicts itself about display: table-row; flex items

Hi,

I noticed a contradiction in the flexbox spec about items that have
display: table-row. Notably here:
http://dev.w3.org/csswg/css-flexbox/#flex-items
"A flex item establishes a new formatting context for its contents.
The type of this formatting context is determined by its ‘display’
value, as usual. The computed ‘display’ of a flex item is determined
by applying the table in CSS 2.1 Chapter 9.7."

That table requires adjusting table-row/table-cell/etc to block. But
later, the flexbox spec says:

"Some values of ‘display’ trigger the generation of anonymous boxes.
For example, a misparented ‘table-cell’ child is fixed up by
generating anonymous ‘table’ and ‘table-row’ elements around it.
[CSS21] This fixup must occur before a flex container's children are
promoted to flex items."

That inconsistency should be fixed... browsers are disagreeing on this
behavior (Firefox does the anon wrapper, Chrome does the
promote-to-block thing). I found this while running the Gecko tests in
Chrome.

-christian

Received on Wednesday, 22 May 2013 01:46:13 UTC