Re: [css-display] Refactoring 'display', got a crazy idea

On 05/07/2015 10:15 AM, Tab Atkins Jr. wrote:
> So, per a WG resolution from a while ago, I'm refactoring the Display
> module to drop 'display-inside/outside' and instead just extend
> 'display' to handle the things it allowed. While doing so, I realized
> my previous spec text was papering over an awkward hole, and I could
> fix that hole while solving a long-standing request at the same time.
> [...]

To summarize what Tab was saying, the proposal is to have the 'display'
shorthand take the following syntax:

  display: none | [ <inside> || <outside> ] | <internal>

where

   <outside>  = block | inline | run-in ;
   <inside>   = flow | flow-root | table | flex | grid | ruby ;
   <internal> = table-row-group | etc.

with the following equivalencies:

block flow       => block
block flow-root  => BFC root
inline flow      => inline
inline flow-root => inline-block

the idea being that "flow" indicates the contents might interact
with stuff from outside (this is true of both regular inlines and
regular blocks), while "flow-root" indicates establishing a new
formatting context.

The term "flow" was taken from the HTML specs, where it indicates
a mix of inline and block content. This is consistent with how
CSS block containers accept a mix of inline and block content and
format them together.

~fantasai

Received on Thursday, 7 May 2015 23:38:15 UTC