[css3-flexbox][css21] Make table cells/flex items/grid items paint atomically?

Back in Flexbox's LC, we had an LC issue from Morten
<http://dev.w3.org/csswg/css3-flexbox/issues-lc-2012#issue-5> about
flex items painting atomically (that is, establishing pseudo-stacking
contexts).

There was definitely a preference that they be atomic, but we couldn't
find a strong enough reason to make them inconsistent with table
cells, which paint non-atomically like blocks.

We're wondering if we could just change table cells (and thus flex
items and grid items) to paint atomically, though.

As far as we can tell, the only way this behavior would be noticeable
is a float from outside the table cell overlaps the table cell (via
negative margins), which currently makes the float paint *above* the
table cell's background, but *below* the table cell's contents.  This
change would make it either paint above or below the entire table
cell, depending on their relative tree positions.  This situation
seems like it would be rather uncommon, and more atomicity in painting
is pretty much always a good idea for implementations and easier for
authors to understand.

So the key question is, is this change web-compatible, and do we want
to make it?

~TJ and fantasai

Received on Thursday, 28 March 2013 22:53:04 UTC