W3C home > Mailing lists > Public > www-style@w3.org > March 2009

Re: layout idea

From: Tab Atkins Jr. <jackalmage@gmail.com>
Date: Sun, 15 Mar 2009 20:27:25 -0500
Message-ID: <dd0fbad0903151827r576b31dfjfda23dc0b3a9cb49@mail.gmail.com>
To: Jonathan Snook <jonathan.snook@gmail.com>
Cc: www-style@w3.org
On Fri, Mar 13, 2009 at 3:54 PM, Jonathan Snook
<jonathan.snook@gmail.com> 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

It feels like this is nearly exactly like Grid Layout, except not
quite as flexible.

As well, it commits the (what I consider a) sin of defining the page's
layout only in the aggregate - you have to know *all* of the matrix
declarations to figure out just how many cells are in the grid.  This
is why I dislike Andrew's grid layout as well.  The official Grid
Layout module declares a grid explicitly on a positioning ancestor, so
you know precisely what's going on from a single declaration.

Andrew does make an excellent point wrt the weaknesses of using the
position property for specifying grid, namely that it prevents you
from doing things like position:relative on the blocks afterwards.
However, this can likely be dealt with by extending calc() to accept
gr units as well.  That is, if you wanted to put something in a
particular grid cell and then move it to the left by 1em, you could do
something like:

foo {
  position: absolute;
  left: calc(2gr - 1em);
  top: 1gr;
}

Does this seem reasonable?

I should also state that I love *both* the Grid Layout and Template
Layout modules, and would make heavy use of both of them were they to
exist.

~TJ
Received on Monday, 16 March 2009 01:28:01 GMT

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