W3C home > Mailing lists > Public > www-style@w3.org > July 2011

RE: [css3-flexbox] getting multiline flexbox back into the spec

From: Alex Mogilevsky <alexmog@microsoft.com>
Date: Tue, 26 Jul 2011 23:33:53 +0000
To: Tab Atkins Jr. <jackalmage@gmail.com>
CC: Andrew Fedoniouk <news@terrainformatica.com>, fantasai <fantasai.lists@inkedblade.net>, "www-style@w3.org" <www-style@w3.org>
Message-ID: <D51C9E849DDD0D4EA38C2E5398569284120D7D0A@TK5EX14MBXC218.redmond.corp.microsoft.com>
One more. We (Fantasai and me) like this one:

Option 8:

flex-flow: 
    [ row | row-reverse | column | column-reverse ] || [ wrap | wrap-reverse ] |

    [ horizontal | horizontal-reverse | horizontal-ltr| horizontal-rtl ] && 
    [ wrap| wrap-reverse | wrap-down| wrap-up ]? |

    [ vertical| vertical-reverse| vertical-ttb| vertical-btt ] && 
    [ wrap | wrap-reverse | wrap-left | wrap-right ]?


± -----Original Message-----
± From: Tab Atkins Jr. [mailto:jackalmage@gmail.com]
± Sent: Tuesday, July 26, 2011 3:50 PM
± To: Alex Mogilevsky
± Cc: Andrew Fedoniouk; fantasai; www-style@w3.org
± Subject: Re: [css3-flexbox] getting multiline flexbox back into the spec
± 
± On Tue, Jul 26, 2011 at 3:25 PM, Alex Mogilevsky <alexmog@microsoft.com>
± wrote:
± > From: Andrew Fedoniouk [mailto:andrew.fedoniouk@live.com]
± > ±   flex-flow: stack;
± > ±
± > ± Children replaced one on top another. Intrinsic dimensions of ±
± > flex-flow: stack; container are equal to tallest/widest child
± dimensions.
± > ± This kind of layout is used by tabs container and is not achievable
± > in CSS ± at all at the moment.
± >
± > 'stack' is a very useful layout type, certainly needs to be supported.
± It is currently implemented by Grid layout:
± >
± > <div style="display:grid">
± >        <div id="one">...</div>
± >        <div id="two">...</div>
± >        <div id="three">...</div>
± > </div>
± >
± > Will do exactly what you want for stack:
± > - initial values for grid-column and grid-row are 0
± > - initial values for grid-column-span and grid-row-span are 1
± > - grid will size to biggest child in both dimensions, then stretch
± children to be same size.
± >
± > It may not be intuitive to use grid to create stack. Perhaps it would be
± reasonable to support same behavior on flexbox. I’ll add it to issues.
± 
± Actually, Grid doesn't quite work here (but it's really close - quite
± clever!), for the same reason you can't use multiple backgrounds to
± simulate image fallback - if the top layer is partially transparent,
± you'll see the lower layers through it.  One almost certainly wants stacks
± to hide the lower layers.
± 
± However, the fact that this is so close to working means that it would be
± really easy to define display:stack via copypasta.
± 
± (Alternately, we could add an option to Grid that suppresses the display
± of parts of elements in a grid-cell when they're not the topmost.  I don't
± think this is a great idea because, as you note, it's not very intuitive
± to use Grid for this case.)
± 
± 
± > ±   flex-flow: flow(1 2,
± > ±                   1 3);
± > ±
± > ± The flow function is an explicit defintion of how container replaces
± > its ± children.
± > ± The flow(row1, row2, ..., rowN ) "function" contains comma separated
± > list ± of row defintions. Each row contains white space separated list
± > of ± integers - indexes of elements that will be replaced in the cell.
± > Elements ± can span multiple cells.
± >
± > Interesting. I think functionality involving "cells" and "span" belongs
± to grid.
± 
± Yes, anything like this is very clearly Grid's territory.
± 
± ~TJ

Received on Tuesday, 26 July 2011 23:34:33 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:20:42 GMT