"W. L. Estes" <[EMAIL PROTECTED]> writes:

> > > the html output does not contain a <p> tag even though there is a
> > > double-space in the texinfo input.
> > 
> > Sorry, I must be dense today.  By ``double-space'' do you refer to the 
> > single empty line between "some text" and "@format"?  If so, why do you 
> > call it ``double'', and what problems do you see in how makeinfo formats 
> > this snippet?
> 
> yes. it's a "double-space" because it takes 2 newlines to produce
> it.

<p> is `paragraph'. Contents of p is rendered as paragraph
but how to add newlines around them is up to user
agent. Putting <p> at the place you mentioned is deprecated
usage.

> > I don't have the HTML references handy, but doesn't <pre> automatically 
> > implies <p>?  I think it does.

It may be a typo but <pre> implies </p>. p *is* paragraph
not newline.

> html4.1 spec says pre is an inline element.
      ^^^
4.01?

Are you sure? pre means preformatted text. It doesn't make
sense if pre is an inline element.
Quote from HTML 4.0 strict.dtd

<!ENTITY % preformatted "PRE">

<!ENTITY % block
     "P | %heading; | %list; | %preformatted; | DL | DIV | NOSCRIPT |
      BLOCKQUOTE | FORM | HR | TABLE | FIELDSET | ADDRESS">

> > Anyway, your change adds <br>, not <p>, so how did <p> come into this?
> 
> right but:
> 
> the right thing would be for makeinfo --html to output <p> upon
> processing the double-space. 

No. See the explanation above. HTML is hyper text markup
language. After HTML 4.0, physical markup is deprecated. If
you want to force HTML user agent to add newline before pre,
use CSS.
(I know there's no user agent which can handle CSS
correctly. Sigh.)

-- 
Yoshiki Hayashi

Reply via email to