Re: Correct syntax of <LI> tags

Michal Young (young@cs.purdue.edu)
Wed, 21 Jun 1995 12:11:15 -0500


>the browsers that throw out the whitespace before and after
>all the words in a block structuring element are preferred.

If this is desired (as vs. treating any amount of white space as being
equivalent to one space), then it may be desirable to explicitly describe
how whitespace can be inserted. Perhaps a non-breaking space is good
enough, but I suspect a little more is needed. Actually, what one wants is
probably not explicit white space, but a "disappearing delimiter" that can
be used to guard against space-gobbling.

An analogous problem comes up fairly frequently in TeX/LaTeX, when one
would like to define a command that begins or ends with "normal" white
space. One can't do
\def\foo{bar}
and use it as "My \foo is broken"
because TeX will gobble space after \foo. One also cannot do
\def\foo{bar }
because the ending space is unwanted in "Who broke my \foo?"
In practice one uses the first definition and uses a "disappearing
delimiter" to avoid space-gobbling, like this: "My {\foo} is broken" or "My
\foo{} is broken".
Since html does not provide a "disappearing delimiter" (or does it?), there
is a possibility of introducing a situation in which it is difficult to
insert "normal" white space.

The need for white space immediately after an element may be rare or even
non-existant for block structuring tags, but I would argue for consistency
sake that white space after structuring tags should be treated the same as
white space after tags like <EM>, <A ...>, etc.

--Michal

----------------------
Michal Young
Purdue University
Software Engineering Research Center
Department of Computer Sciences
1398 Computer Science Building
West Lafayette, IN 47907-1398
voice: 317-494-6023
fax: 317-494-0739
URL: http://www.cs.purdue.edu/people/young
-----------------------