- From: James Elmore <James.Elmore@cox.net>
- Date: Sat, 23 Jun 2007 12:23:46 -0700
- To: www-style@w3.org
Raul Dias wrote: > On Sat, 2007-06-23 at 11:11 -0700, James Elmore wrote: > >> >>Daniel Beardsmore wrote: >> >> >> >>>> 4. Allow designers to constrain the height/width of sets of blocks ... >>> >>> >>>This was the subject I introduced here some months back and was not well >>>understood. The only solution I've seen (that someone showed me) was >>>still a horrible hack. Combined with what you wrote in 5, this would be >>>fantastic. >> >>I remember the discussion. I don't have a complete, well thought out solution, >>but I am thinking about something like >> .blockset1 { width: max(); height: min(); } >>This would require the CSS module to find the max, or min, or other constraint >>of a group of blocks. The blocks would be defined as belonging to a class (in >>the example, .blockset1). Other limitations, as in the table layout algorithms >>would need to be applied. If I read the specification correctly, the only >>information needed is the width of the parent block and the contents of the >>*children blocks. > > > There is no problem with width: 100%, this is the default for block > elements, so it is not a big deal, but the problem is with height: 100%. > > The specification says that a % value can only be used if the parent > value is specified with an exactly metric (px). Note that a parent > height with % does nullify the children % height. > > This means you can never have a left/right column sided by content, > which both have exactly the same height, if you dont specify splicity > the height. > > This is fine for a static content where you can force the fontsize and > heights. However this is horrible for templating, where you dont know > the content sizes (or the columns size). > > Right now the solution for this is bad css hacks (which breaks linked > content on IE and anchors and other stuff) or javascript based solution. > > -Raul Dias > > This is part of the problem I am suggesting needs solving. The bigger solution involves taking groups of blocks which are not in a table, not in a column, not in a row, just some number of blocks, possibly not related, except for being in the group, and applying something similar to the table layout algorithm to the group. This would allow designers to create areas on a page with the same size (width, height, or both). Because the only way to do this now involves surrounding everything with <table>, <tr>, and <td> or <th> (at the very least), it is difficult for designers to make this magic happen. I have seen discussions in this group going back months where someone requests the ability to have CSS size blocks for them and the only possible solutions (currently) are to force the blocks to have exact sizes, to have the same parent and have the exact same percentage of that parent, or to be part of the same row or column of a table. As you point out, unless the columns are part of the same table, designers can not make left and right columns match in height. This proposal would solve these and many other problems currently facing designers and would make CSS more useful and (hopefully) more used. -- James Elmore 22162 Windward Way Lake Forest, CA 92630 Home (949) 830-9534 Email James.Elmore@cox.net
Received on Saturday, 23 June 2007 20:06:45 UTC