- From: MegaZone <megazone@livingston.com>
- Date: Sat, 20 Sep 1997 23:25:26 -0700 (PDT)
- To: www-html@w3.org
I'd like to request a change to TABLES for backwards compatibility. The current spec forces authors to put TFOOT ahead of TBODY. The problem with this is older user agents. <TABLE> <THEAD> <TR><TH>This is the top of the table. <TFOOT> <TR><TH>This is the bottom of the table. <TBODY> <TR><TD>This is the contents. </TABLE> In a new UA that would be: This is the top of the table. This is the contents. This is the bottom of the table. But in an old UA, which will ignore the THEAD/TFOOT/TBODY, it is: This is the top of the table. This is the bottom of the table. This is the contents. Which is wrong. On page 103, section 12.1.3, it says: TFOOT must appear before TBODY within a TABLE definition so that user agents can render the foot before receiving all of the (potentially numerous) rows of data. The following summarizes which tags are required and which may be omitted: I don't get that. Doesn't the UA need to load the table first to count how many TR tags there are to know how many rows there are? How will it be able to render the footer before it knows how much body content there is? Can't we leave this up to the author to decide - which is more important, rendering speed of backwards compatibility. For me it is the latter, yet I'd love to use this for any UAs that do intelligent printing, etc. What is the problem with allowing this? <TABLE> <THEAD> <TR><TH>This is the top of the table. <TBODY> <TR><TD>This is the contents. <TFOOT> <TR><TH>This is the bottom of the table. </TABLE> That should render correctly in old and new UAs. ---second idea--- Another issue is in 12.2.1, page 116. It seems we are forced to accept right justified text (assuming ltr flow) if using align=char. Can't we treat the presence of 'char="x"' as enough to assume align=char? Make 'char' required for character based alignment, and it can act as a boolean of sorts. If it is there, align on the character carried by its value. The example is: <TABLE border="border"> <COLGROUP> <COL><COL align="char" char="."> <THEAD> <TR><TH>Vegetable <TH>Cost per kilo <TBODY> <TR><TD>Lettuce <TD>$1 <TR><TD>Silver carrots <TD>$10.50 <TR><TD>Golden turnips <TD>$100.30 </TABLE> ------------------------------ | Vegetable |Cost per kilo| |--------------|-------------| |Lettuce | $1 | |--------------|-------------| |Silver carrots| $10.50| |--------------|-------------| |Golden turnips| $100.30| ------------------------------ By removing the need for align="char" you could do this: <TABLE border="border"> <COLGROUP> <COL><COL align="left" char="."> <THEAD> <TR><TH>Vegetable <TH>Cost per kilo <TBODY> <TR><TD>Lettuce <TD>$1 <TR><TD>Silver carrots <TD>$10.50 <TR><TD>Golden turnips <TD>$100.30 </TABLE> ------------------------------ | Vegetable |Cost per kilo| |--------------|-------------| |Lettuce | $1 | |--------------|-------------| |Silver carrots| $10.50 | |--------------|-------------| |Golden turnips|$100.30 | ------------------------------ Where the UA simply moves the text to the left until the item that protrudes the farthest can go left no more, and then aligns the rest to it. It would seem that it has to do the same thing relative to right alignment. Or <TABLE border="border"> <COLGROUP> <COL><COL align="center" char="."> <THEAD> <TR><TH>Vegetable <TH>Cost per kilo <TBODY> <TR><TD>Lettuce <TD>$1 <TR><TD>Silver carrots <TD>$10.50 <TR><TD>Golden turnips <TD>$100.30 </TABLE> ------------------------------ | Vegetable |Cost per kilo| |--------------|-------------| |Lettuce | $1 | |--------------|-------------| |Silver carrots| $10.50 | |--------------|-------------| |Golden turnips| $100.30 | ------------------------------ This I'd see computed based on an artifical value - an item made up of the longest span to the left of the align character plus the longest span to the right of the align character. Like so: ------------------------------ | Vegetable |Cost per kilo| |--------------|-------------| |Lettuce | $1 | |--------------|-------------| |Silver carrots| $10.5099 | |--------------|-------------| |Golden turnips| $100.30 | ------------------------------ Centering the alignment character would not be sufficient. Imagine a number of values like .23456, 1.23456, and .456567 - they'd all be weighted to the right of the column. Discussion? -MZ -- Livingston Enterprises - Chair, Department of Interstitial Affairs Phone: 800-458-9966 510-737-2100 FAX: 510-737-2110 megazone@livingston.com For support requests: support@livingston.com <http://www.livingston.com/> Snail mail: 4464 Willow Road, Pleasanton, CA 94588
Received on Sunday, 21 September 1997 02:30:06 UTC