Note that the whitespace in the header is retained, while the whitespace 
    in the line items is compressed, which causes vertical misalignment. 

What I see is not related to whitespace in the input.  Consider:

@multitable {California} {Sacramento} {California poppy}
@headitem State @tab Capital @tab Flower
@item Georgia @tab Atlanta @tab Azalea
@item California @tab Sacramento @tab California poppy
@end multitable

The HTML output looks very clean, being the simplest possible generic
translation:

<table>
<thead><tr><th>State</th><th>Capital</th><th>Flower</th></tr></thead>
<tr><td>Georgia</td><td>Atlanta</td><td>Azalea</td></tr>
<tr><td>California</td><td>Sacramento</td><td>California poppy</td></tr>
</table>

Browsers (at least the ones I tried, the usual) center <th> cells by
default, hence the cells in the heading line appear reasonably spaced.

On the other hand, browsers leave zero or very little (1 pixel?) space
between <td> cells.  Hence "Sacramento" is essentially running into the
"California poppy".  (Screenshot attached.)  How unfortunate.

I agree that it looks bad.  HTML does not (to my knowledge) have a
reasonable way of using the "prototype row" method of giving column
width definitions like the above (the @multitable line).  makeinfo does
already make use of @columnfractions specifications (<td width="33%">, etc.).

I suppose we could insert some random amount cell padding in the
prototype row case, e.g., 1em.  That will look good in some cases and
not so good In others, but maybe it's better than nothing.  I'm not sure.

Karl

Reply via email to