[css3-tables] Optimize per column whitespace due to line wrapping

Has anyone raised this issue in the past?

Table layout (at least in latest versions of Firefox and Chrome) appears
to leave large gaps of unused whitespace for the case where on every line
of every row of a column, there are large unbreakable words that all
happen to be at the wrapping edge.

For example, see the table in the section "LL(1) First-set is:" and notice
that when resizing the window width, the gaps that appear on left side of
the right aligned column that follows the column containing the "|":

http://copute.com/dev/docs/Copute/ref/llk.html

This is because every line of every row (that is not an overlapping
colspan) has word wrapped.

I remember reading in a description of table layout algorithm, that the
available space is proportioned relative to the maximum (per row cell)
unwrapped length of the text in the column.

To optimize this I guess would require a multi-pass algorithm (a gradient
search, because eliminating whitespace in one column might cause in other,
but unlikely?) that looks for whitespace at the inline end
(left-justified) or start (right-justified) of every line for every row of
a column.

Here are the table layout algorithms I know of, and afaics they aim to
minimize overflow, and maximize the table dimension (proportioning columns
heuristically), in the inline direction:

http://dev.w3.org/csswg/css3-tables-algorithms/Overview.src.htm
http://www.w3.org/TR/CSS21/tables.html#auto-table-layout
http://w3m.sourceforge.net/STORY
http://www.ietf.org/rfc/rfc1942.txt (see page 23)
http://mxr.mozilla.org/mozilla-central/source/layout/tables/

Received on Sunday, 2 January 2011 14:13:18 UTC