16:49. Restate my assumptions

I’ve just been reading design books in Books Etc and looking at pavements and thinking about the discussion so far. My thoughts:

  1. Grids are a great layout tool. Tables are a bad implementation of grids. There’s no rotation or layering. Elements that should interact weakly (like borders) sometimes have to interact strongly with the content. A good idea might be to formalise layout grids into something other than <table>s, splitting them from data tables completely.
  2. Positioning hierarchies are also very useful. Grids and indeed complex borders would be halfway implemented if we could nest layouts within blocks and define rigid rules for the sizing of those blocks. CSS2 states “[Positioning proerties] specify offsets with respect to the box’s containing block.” This is cool, but it also states “Absolutely positioned boxes are taken out of the normal flow. This means they have no impact on the layout of later siblings.” Thus the result is not what you might predict. See this demo.
  3. CSS is too dumb to suit authors. Authors can specify very quickly what they want to do in different situations, CSS does not allow them to write these specifications down. Example. If Hype is scaled so that it’s only 200 pixels wide, I would want the columns to be stacked, but not in the order they are defined in the HTML. I’d want 1,3,2 instead of 1,2,3. This ties in with a lot of Coises’ problems and constraints seem like a good way to express these nuances. However, I think that conditionals are really what’s needed here and the constraints proposal doesn’t really address that.