RE: default.css

> Stephanos Piperoglou [SMTP:sp249@cam.ac.uk] wrote:
>Both Netscape and MS need to rewrite their
>browsers from scratch...
>It is obvious that both browsers refuse to consider an HTML document as a
>tree of elements, but instead consider it as a *series* of... things. No
>wonder both object models are so inconsistent.

Actually, Stephanos, you're wrong about Internet Explorer.  Its internal
rendering model considers the document to be a tree of elements.  We have,
in IE4 and beyond, an internal model that is based on the cascading and
inheriting model of CSS, and in short, default HTML rendering is performed,
in essence, by translation into the appropriate CSS properties.  (Actually,
we never think of them in separate terms.)  We do not translate CSS into
HTML or Javascript, we understand it natively.  We do not convert <OBJECT>
into <EMBED> - they are separate classes that inherit some common behavior,
but it is not a straight-forward translation.

>And this is the reason why
>correct rendering of paragraphs (possible the simplest and most basic
>element since the birth of HTML!) is so messed up in both browsers: they
>consider <P> to be a *paragraph break entity*, not a *paragraph element
>start-tag*. Ommit the </P> and in most cases you get no space after the
>paragraph. 

This is the crux of the issue.  We deem it to be a <bad idea> to break
backwards compatibility.  Our customers tend to get irate when we tell them
"we've got this great new system - now go rewrite all your content so you
can use it."  (If you don't believe me, do a journal search on "Office 97
incompatibilies".)

That said, we do the best we can to keep the right model while not breaking
backwards compat.  A <P> element is most certainly NOT an empty "paragraph
break entity" to IE - but at the same time, we may not imply </P> tags where
the HTML 4.0 DTD says we should, because our rendering would differ,
possibly critically to some customers, from those legacy systems that treat
<P> as an empty element and don't imply </P>s.  If this causes you grief,
put the </P> tags in your documents, and you're golden (at least, as far as
IE is concerned).

-Chris Wilson
 Internet Explorer Team
 Microsoft

Received on Monday, 18 May 1998 12:01:00 UTC