Closing <p> (fwd)

MegaZone (megazone@livingston.com)
Tue, 13 May 1997 20:13:08 -0700 (PDT)

Once upon a time Steve Mount shaped the electrons to say...
>OK, now, I understand that the </p> tag of the p element is optional. And
>I know the browser can infer the </p> by the presence of another <p>. But
>what else implies the end of the p element? Someone's mentioned <hr>,

Any other block level element. lists, tables, other paragraphs, hr, div,
etc.

<!ENTITY % block
"P | %list | %preformatted | DL | DIV | CENTER |
BLOCKQUOTE | FORM | ISINDEX | HR | TABLE">

<!ENTITY % list "UL | OL | DIR | MENU">

<![ %HTML.Deprecated [
<!ENTITY % preformatted "PRE | XMP | LISTING">
]]>

<!ENTITY % preformatted "PRE">

>(and yes, I know /li is optional, too). But validators complain because, I
>guess, ul implies the closure of p. But the effect in the browsers I use

yes it does.

>some text to introduce a list
>
>
> (lots o' space I don't like)

That's because some browsers, for some reason, put in whitespace before
AND after a paragraph and then again before a list, etc. *shrug* I would
bitch at the browser vendor.

>Now, I know that how this is rendered is the browser's problem, but, what
>up? What is the rationale behind the ul closing the p? (and in case you

That's how SGML is - block level elements define devisions in a document.
Although I *think* you can nest DIV...

yes, you can - P is like so:

<!ELEMENT P - O (%text)*>

DIV is like so... It is an exception in that it is designed to wrap
other block level elements too.

<!ELEMENT DIV - - %body.content>

Which is why you must close DIV - nothing except the end of the document
implicitly closes it.

-MZ

--
Livingston Enterprises - Chair, Department of Interstitial Affairs
Phone: 800-458-9966 510-737-2100 FAX: 510-737-2110 megazone@livingston.com
For support requests: support@livingston.com  <http://www.livingston.com/> 
Snail mail: 4464 Willow Road, Pleasanton, CA 94588