- From: Andrew Fedoniouk <news@terrainformatica.com>
- Date: Fri, 13 Mar 2009 17:51:39 -0700
- To: David Hyatt <hyatt@apple.com>
- CC: Jonathan Snook <jonathan.snook@gmail.com>, www-style@w3.org
David Hyatt wrote: > On Mar 13, 2009, at 3:54 PM, Jonathan Snook wrote: > >> I've spent a little time over the past week working on an idea. I >> don't know if it's viable or not or whether something like it has >> already been proposed (besides Advanced Layout and the Grid module). >> But it never hurts to pitch my own stone into the pond. >> >> Matrix Layouts: >> http://snook.ca/technical/matrix-layouts/ >> >> Along with the accompanying blog post: >> http://snook.ca/archives/html_and_css/matrix-layouts >> >> Good or bad, I look forward to some feedback. >> >> -Jonathan Snook >> >> > > I like the idea of a grid/matrix layout, and I certainly prefer what > you've specified (as well as the grid proposal from Microsoft) to the > ASCII art approach in CSS advanced layout. > > I'd rather just see a position:grid value and then use some kind of > grid unit in conjunction with left/right/top/bottom. I think that > could achieve the same effect and feels more natural to me than the > two pairs of numbers crammed into the position property. > > For example: > > position:grid; > left: 1gr; > top: 1gr; > > To put the object's top left corner at the top left corner of row 2 > column 2 (assuming 0-based row/column access). > > Stretching across the whole first row would be as easy as: > > position:grid; > left:0; > right:0; > > Width and height could be specified in grid units as well (there would > be a fair bit to work out though regarding how the overall row/column > widths/heights got determined). > > dave > (hyatt@apple.com) > > I am using special 'flow' attribute[1] for defining type of the layout manager. So container looks like as #container { flow: grid; } and children have something like this: #top-spans-3-columns { left:1#; right:3#; top:1# } #bottom-spans-3-columns { left:1#; right:3#; top:3# } It is not desirable to use 'position' attribute for that as you may want to say something like: #bottom-spans-3-columns { left:1#; right:3#; top:1#; position: absolute; } to move the element on different z-stack position. In any case positioning and type of layout management are quite different entities - layout manager defines the way how elements are being replaced in *normal/static* flow. IMO of course. [1] http://www.terrainformatica.com/htmlayout/flow.whtm -- Andrew Fedoniouk. http://terrainformatica.com
Received on Saturday, 14 March 2009 00:52:20 UTC