Re: What's allowed in table cells?

Sunil Mishra (smishra@cc.gatech.edu)
Tue, 24 Sep 1996 19:52:18 -0400 (EDT)


Date: Tue, 24 Sep 1996 19:52:18 -0400 (EDT)
Message-Id: <199609242352.TAA01603@cleon.cc.gatech.edu>
From: Sunil Mishra <smishra@cc.gatech.edu>
To: www-html@w3.org
In-reply-to: <199609242334.SAA20671@inet.htcnet.com> (msftrncs@htcnet.com)
Subject: Re: What's allowed in table cells?


\\ | I passed this through a parser (WebTechs validation service using the
\\ strict
\\ | HTML 3.2 DTD) and it definetely choked:
\\ | 
\\ | <TABLE>
\\ | <TR><P><TD>
\\ | </TABLE>
\\ | 
\\ | This is a BIT confusing to me. I understand that the DTD implies no
\\ markup
\\ | between TABLE tags and TR, TD and TH blocks, but WHY?
\\ 
\\ Yea, confusing huh?  I stoped using validators for that purpose...   I
\\ would first exclaim that tables were designed by LYNX killers...
\\ NETSCAPE... but since I don't know the history behind tables I can't
\\ say for certian...  There is no backwards compatibility with TABLES
\\ themselves ...  Also the validators seem to complain about contentless
\\ table cells...  nothing said a cell must have content...  and from what
\\ I remember, a TR can contain content... but maybe i better read that
\\ part of 3.2 spec first?

What is the sense of having a paragraph inside a table, or within the row
of a table? A paragraph, and other content, can logically only belong to
the cell within a table. True, tables do screw up a web page on a browser
that cannot handle them correctly. That is the price you pay for using
them.

As for table cell content...

<!ELEMENT (th|td) - O %body.content>

<!ENTITY % body.content "(%heading | %text | %block | ADDRESS)*">

Hmmm, the validators you used seem to be doing something wrong here,
because the DTD does appear to allow %body.content to be empty. Why that
should be the case is definitely beyond me. (Or am I misinterpreting?)

\\ | The following validated fine:
\\ | 
\\ | <TITLE>Somestring</TITLE>
\\ | <BODY>
\\ | Foobar
\\ | </BODY>
\\ 
\\ Thats weird... the default mode of HTML 3.2 states thats incorrect, and
\\ that you must use a "relaxed" switch ... maybe WEBTECHS has such as
\\ switch/mode...
\\ 
\\ It otherwise falls into a P tag with MSIE and NS I beleive...

Text is allowed in body in HTML 3.2. Try running through the same expansion
process.

Sunil