HTML 4.0 suggested change to 'char' alignment in TABLE

MegaZone (megazone@livingston.com)
Thu, 25 Sep 1997 16:29:04 -0700 (PDT)


Message-Id: <199709252329.QAA26687@server.livingston.com>
To: www-html@w3.org
Date: Thu, 25 Sep 1997 16:29:04 -0700 (PDT)
From: MegaZone <megazone@livingston.com>
Subject: HTML 4.0 suggested change to 'char' alignment in TABLE

A suggestion for changing table cell data alignment.

In section 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.

-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