Re: Remarks on Tables draft

Chris Tilbury (C.J.Tilbury@estate.warwick.ac.uk)
Wed, 26 Jul 95 09:12:44 EDT

On 26 Jul 95 at 7:40, Bert Bos wrote:

> Terry Allen writes:
>
> |Some comments and questions on:
> |
> || HTML Tables 7th July 1995
> || INTERNET DRAFT Dave Raggett, W3C
> || <draft-ietf-html-tables-00.txt>
> ||
> || Tables can contain a wide range of content, such as headers, lists,
> || paragraphs, forms, figures, preformatted text and even nested
> || tables. When the table is flush left or right, subsequent elements
> || will be flowed around the table if there is sufficient room. This
> || behaviour is disabled when the noflow attribute is given or the
> || table align attribute is center (the default), or justify.
> |
> |Does this mean one cannot have a centered table with text flowing
> |around both sides?
>
> Are you suggesting that that should be possible? If so, why?

Because someone, somewhere, might need this?

Because the specification (and this applies to the ALIGN="CENTER" in
general both in tables and other elements) is pointlessly removing
functionality which could be useful?

Because the whole ALIGN attribute is nothing but a great big
confusing mess at the moment?

Let's look at it, shall we. ALIGN can be ...

ALIGN="LEFT"
Means that the object will be flush left aligned with the
margin and with text wrapping around it to the right.

ALIGN="BLEEDLEFT"
Flushleft with the /window/ border as opposed to margin.

ALIGN="RIGHT"
Means that the object will be flush right aligned with the margin,
and with text wrapping around it to the left.

ALIGN="BLEEDRIGHT"
Flushright with the /window/ border as opposed to margin.

ALIGN="CENTER"
Means that the object will be centered horizontally, with no text
wrapping.

ALIGN="TOP"
Means that the baseline of the following text is
aligned with the top of the image.

ALIGN="BOTTOM"
Means that the baseline of the following text is aligned with the
bottom of the image.

ALIGN="MIDDLE"
Means that the baseline of the following text is aligned with the
middle of the image.

ALIGN="JUSTIFY"
Means all sorts of stuff - either text is fully justified to both
margins, or images are horizontally expanded to fit the page width.

Frankly, all we need now is ALIGN="SATURN" to complete the confusion.

The ALIGN attribute is /very/ element or context sensitive. Because
of this, not all possible attribute values are valid for it in all
possible contexts. This makes it hard to use, and this is one thing
that HTML is /not/ supposed to be. Remember, we're all supposed to be
able to dig out 'jove', 'edit.com', 'notepad.exe' and knock up an
effective HTML document. Giving attribute values such a degree of
context sensitivity makes them hard to use unless you're either an
expert, or have a proper HTML/SGML editor which can work out which
are valid values.

This, however, is something we're going to have to live with I
suspect since changing ALIGN now will be a real downer on existing
documents.

Just to make things worse though, we also find that we have

CLEAR="LEFT"
Move down until the left margin is clear

CLEAR="RIGHT"
Move down until the right margin is clear

CLEAR="ALL"
Move down until both margins are clear

Which can be used in many elements to effectively kill off the text
flow, as well as

NOFLOW
The presence of this attribute disables text flow around the
[figure/table]

Which can be used to disable text flow in the element in question.

So, let's turn this question around, shall we.

With 2 different means available to /disable/ text flow, why is
it necessary to involve the issue of text flow in the ALIGN
attribute at all? The damn thing is a big enough mess as it is already,
without making some of the attribute values twice as complicated by
having to remember which does what to text flow.

What's wrong with turning text flow on, by default, and telling
people to just use NOFLOW if they don't want it to flow? Specifiying
that ALIGN="CENTER" has no text flow is, perhaps, needlessly limiting
the capabilities of HTML.

(If we do cripple HTML like this, then you can guarantee that someone
*will* come up with a "FLOW" attribute, outside of this working
group, and I'll give you one guess who that someone will be ...)

Regards,

Chris (making a fool of himself in his first message, no doubt :-)

--
Chris Tilbury, Estates Office, University of Warwick, UK, CV4 7AL
Tel: +44 1203 523523 x2665                   Fax: +44 1203 524444
MIME mail welcomed      mailto:Chris.Tilbury@estate.warwick.ac.uk