W3C home > Mailing lists > Public > www-style@w3.org > May 2013

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

From: Christian Biesinger <cbiesinger@google.com>
Date: Tue, 21 May 2013 18:45:46 -0700
Message-ID: <CAPTJ0XF6sAsp_P5LBQCgrB5B9mp3vrfq1z3N04ap8fhbbvazCA@mail.gmail.com>
To: www-style list <www-style@w3.org>
Cc: Ojan Vafai <ojan@chromium.org>
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

This archive was generated by hypermail 2.3.1 : Wednesday, 22 May 2013 01:46:14 UTC