- From: Andrew Fedoniouk <news@terrainformatica.com>
- Date: Fri, 23 Feb 2007 22:21:47 -0800
- To: "Daniel Beardsmore" <public@telcontar.net>, <www-style@w3.org>
----- Original Message -----
From: "Daniel Beardsmore" <public@telcontar.net>
To: <www-style@w3.org>
Sent: Friday, February 23, 2007 6:35 PM
Subject: Re: Wrapping delimited lists, fluid rows
>
> Andrew Fedoniouk wrote:
>>
>> ----- Original Message -----
>> From: "Daniel Beardsmore" <public@telcontar.net>
>> To: <www-style@w3.org>
>> Sent: Thursday, February 22, 2007 8:15 PM
>> Subject: Wrapping delimited lists, fluid rows
>>
.............
>>
>>
>> Rules like
>>
>> ul.menu li:after { content: " | " }
>> ul.menu li:last-on-line:after { content: none }
>>
>> effectively create oscillation condition in the layout algorithm.
>
> Right, it's nice to be told why things can't possibly ever conceivably
> work, but
> how CAN it be made to work? How CAN we prevent undesirable glitches like
> this,
> and go on to handle fluid grid rows?
>
> I don't care what the CSS looks like -- you must realise that precise CSS
> is not
> the issue, but achieving the presentation goal is.
>
>
In htmlayout engine (html/css engine) I've added two things
for that:
1) attribute flow: vertical | horizontal | h-flow | v-flow [1]
2) flex length unit: %% [2]
So to define let's say left-sidebar - content - right-sidebar
layout that is stable for the content it is enough to say:
<div id="body" style="flow:horizontal">
<ul class="leftbar" ><ul>
<div class="content"></div>
<ul class="rightbar" ><ul>
</div>
.leftbar , .rightbar
{
width:20em;
height: 100%%; // full height of the #body content box
}
.content
{
width:100%%; // all space left from leftbar and righbar
// in the #body content box
height: 100%%; // full height of the #body content box
}
So this create expandable single row layout.
There is no way in modern HTML/CSS to reproduce
this except of using tables.
This is not exactly what you need but at least something
that can replace table use cases. In some cases
flex units (%%) can give even more than tables can handle.
Andrew Fedoniouk.
http://terrainformatica.com
[1] Flow attribute: http://www.terrainformatica.com/htmlayout/flow.whtm
[2] Flex units: http://www.terrainformatica.com/htmlayout/fspu.whtm
Demo the engine :
http://www.terrainformatica.com/htmlayout/HTMLayoutDemo.zip
/bin/browse.exe ( Windows or Linux/Wine)
Sidebar flex layout:
/html_samples/generic/sidebars.htm
Various flow attribute demos:
/html_samples/flows/*.htm
Received on Saturday, 24 February 2007 06:22:00 UTC