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

"Tab Atkins Jr." <jackalmage@gmail.com> writes:

> 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?

If it sufficiently web-compatible, I would welcome such a
change. Actually, if we decide to make any changes in this area, I think
I'd like to go even further, and say that a "pseudo-stacking context"
should be established every time a new block formatting context is
established; i.e. make it apply to table-captions and non-visible
overflow containers in addition to the box types you list (table cells
and flex and grid items). More consistent that way.

-- 
---- Morten Stenshorne, developer, Opera Software ASA ----
---- Office: +47 23692400 ------ Mobile: +47 93440112 ----
------------------ http://www.opera.com/ -----------------

Received on Tuesday, 2 April 2013 08:17:33 UTC