Re: CSS 2.1 'overflow' applicability to table row groups

Robert O'Callahan wrote:
> On Wed, Jun 25, 2008 at 11:59 AM, Andrew Fedoniouk 
> <news@terrainformatica.com <mailto:news@terrainformatica.com>> wrote:
> 
>     I personally have no name for the activity  "spec says 'not
>     applicable' in 5 years or so but we will try to use it anyway".
>     Only my condolences to them.
> 
>     <quote src="http://www.w3.org/TR/CSS21/visufx.html#overflow">
>     overflow: This property specifies whether content of a *block-level
>     element* is clipped when it overflows the element's box....
>     </quote>
> 
>     <quote src="http://www.w3.org/TR/CSS21/visuren.html#block-boxes">
>     Block-level elements are those elements of the source document that
>     are formatted visually as blocks (e.g., paragraphs). Several values
>     of the 'display' property make an element block-level: *'block',
>     'list-item', and 'run-in' (part of the time; see run-in boxes), and
>     'table'*
>     </quote>
> 
> 
> I know what the spec says. It's just painful to tell people "sorry, 
> we're taking this feature out because it's not in the spec, sorry there 
> is no other way to do what you want." Your condolences, or mine, may not 
> be appreciated.

tbody { overflow:auto; } is not a solution anyway.

In principle you need two tables table.header and table.body where
some attributes of table.header are bound with table.body:

table.header,
table.header td { overflow-x:hidden; }
table.body { overflow:auto; }

That binding can be done in CSSS!:

/* binding of cell widths */
table.body > tr:first-child > td
{
   size-changed!:
     header-cell = $1(table.header td:nth-child(< self:index >)),
     header-cell::width = self.box-content-width();
}
/* scroll position binding */
table.body
{
   scrolled-x!:
     $1(table.header).scroll-to( self::scroll-position-x(), 0 );
}

but this is CSSS! :)

-- 
Andrew Fedoniouk.

http://terrainformatica.com

Received on Wednesday, 25 June 2008 02:34:32 UTC