- From: Chris Wilson <cwilso@MICROSOFT.com>
- Date: Mon, 18 May 1998 09:00:59 -0700
- To: "'Stephanos Piperoglou'" <sp249@cam.ac.uk>
- Cc: www-style@w3.org
> 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