- From: Tab Atkins Jr. <jackalmage@gmail.com>
- Date: Sun, 11 Mar 2012 08:45:45 -0700
- To: Phil Cupp <pcupp@microsoft.com>
- Cc: Bert Bos <bert@w3.org>, "www-style@w3.org" <www-style@w3.org>
On Fri, Mar 9, 2012 at 11:01 PM, Phil Cupp <pcupp@microsoft.com> wrote: >> From: Bert Bos [mailto:bert@w3.org] >>A) An element has a grid if any of 'grid-template', 'grid-rows' and 'grid-columns' (or the shorthand 'grid') has a value other than its initial value. These properties only apply to block containers. (I.e., 'grid' is modeled on 'columns'.) > > I think what you're saying here is that you don't need to use display to become a grid. Instead you just set grid properties and that triggers creation of a grid. I'm not really a fan of that pattern for two reasons: > > 1. I think it implies that grid-* properties are something universal like width and height, i.e. they apply to all layouts, but that's not the case. > 2. Without the use of one clear property to control the creation of a particular layout type (display), properties would need to be prioritized so we know how to handle cases like <div style="column-count:2; flex-direction:row; grid-columns:10px 20px 30px"></div>. > > I much prefer the pattern of display: foo where foo-* properties are applicable to the foo layout and not bar layout. You know we have a foo layout and not a bar layout because display is foo. Properties that don't have a display-specific prefix should be applicable to all layouts. Strongly agree. The fact that multicol isn't a display type (and then isn't explicitly locked to display:block and list-item) is annoying. When doing major switches where entire swathes of functionality start or stop working, there should be some explicit indicator. ~TJ
Received on Sunday, 11 March 2012 15:46:33 UTC