[css-grid] Auto-placement Stacking Options

fantasai and Tab wrote:
> Hi Rossen!
> Tab and I were working on edits wrt grid-auto-flow: none and had an
> alternative proposal:
>   1. Don't add 'none' back. Keep 'grid-auto-flow:rows' as the initial
>      value.
>   2. Add, for those use cases, a 'stack' value that stacks items into
>      the first implicitly-empty slot. Either
>      a. First slot without explicitly-positioned items into which
>         the auto-positioned item fits, or
>      b. First slot without explicitly-positioned items into which
>         all the auto-positioned items fit
>   3. To address how that empty slot is found, either
>      a. Use [rows|columns] instead of 'auto' in 'grid-auto-position'
>         to define the search direction
>      b. Allow combining 'stack' with [rows|columns]:
>         grid-auto-flow: [rows|columns] || stack
>   4. For compat with Win8, give Win8 apps a default UA stylesheet with
>         * { grid-auto-flow: -ms-none; }
>      or
>         * {  grid-auto-position: 1 / 1; }
>
> We feel #2 is better behavior in general, because it doesn't by default
> overwrite things that are explicitly placed in the grid, and because it
> makes it easy to  auto-stack items into slots other than 1-1, for layouts
> that would prefer to stack items into a different grid slot. But if that's
> not compatible with Win8 apps, the UA rule gives Win8 apps the exact same
> behavior as before.
>
> If you really need to keep 'none' instead of '-ms-none' as the keyword for
> compat reasons, we could possibly still add a simple "none" value that
> does *just* put things in 1/1, no questions asked.
>
> ~fantasai and TJ

Rossen wrote:
>
> [Wrt #2] I'd prefer 'deck' in this case. Because in XAML, 'stack' already
> means, roughly, flexbox, while 'deck' refers to the behavior we're talking
> about.

Received on Monday, 26 August 2013 21:20:12 UTC