[whatwg] Using the HTML5 DOCTYPE as a new quirksmode switch

On Sat, 10 Mar 2007 11:16:09 +0100, Mihai Sucan <mihai.sucan at gmail.com>  
wrote:

> Alexey, actually I'm skeptical about this. First impression I had  
> reading the first post was "hey, do we need yet another switch?". What's  
> "super-duper" standards mode after all?

It's something Internet Explorer needs to switch their JavaScript DOM  
implementation over from the proprietary one they have now, to a  
standard-compliant one that adheres to W3C's DOM1, DOM2 and DOM3  
specifications. If there are other glitches in the existing Standard Mode  
(CSS1Compat) that would need fixing to comply better with the standards,  
then that should also be fixed in this new standard mode (let's call it  
CSS2Compat).

> How will tutorials look:
>
> 1. For quirks mode use no DOCTYPE.

Nobody should use quirks mode, not even for backwards compatibility, so no  
tutorials should mention it. If they do, it should only be swiftly, and  
examples of how to trigger it should not be provided imnsho.

> 2. For standards mode use one of the following DOCTYPEs:
>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"  
> "http://www.w3.org/TR/REC-html40/strict.dtd">

Yes.

> 3. For "super-duper" standards mode use the following DOCTYPE:
>
> <!DOCTYPE html>

For other browsers, <!DOCTYPE html> would trigger the same mode as the  
full HTML 4.01 Strict DOCTYPE. But for Internet Explorer, <!DOCTYPE html>  
could trigger a mode where the DOM isn't backward compatible with the  
proprietary one, but instead implements what everyone else implements; the  
W3C DOM.

> My point is: we either want it, or not, what we have today called as  
> "standards mode" is also buggy (each browser has its own set of  
> rendering bugs). If IE adds the third level of rendering, then we have  
> yet another DOCTYPE switch.

Yep.

> Microsoft needs to make the improvements in the current standards mode -  
> as they did now with IE 7. They need to continue this.

Absolutely. But as Microsoft, I too feel that the now existing base of  
documents using CSS1Compat and at the same time relying on IE's  
proprietary DOM is quite substantial. As Chris Wilson mentions in the  
Yahoo! talk, there are now over 40% documents employing CSS1Compat "out  
there". That's quite a large amount of pages to break, if they want to  
just switch out the proprietary DOM with W3C DOM in CSS1Compat mode.

Introducing CSS2Compat would make the existing base of CSS1Compat sites  
render correctly, while all new sites could move over to CSS2Compat and  
base their stuff on the W3C DOM. It would of course need backward  
compatibility libraries for older versions of Internet Explorer, but it  
would be a way forward where these compatiblity libraries eventually can  
be dropped, exactly like the plan is with HTML Forms 2.0, for instance.

> Adding a new DOCTYPE switch is not a solution to Microsoft's problem.

I believe it is. Since CSS1Compat didn't fix the proprietary IE DOM, they  
need a new switch to fix it. And that switch could be <!DOCTYPE html>. It  
could also be 'Content-Type: application/xhtml+xml', but it's quite a bit  
of overkill to require XHTML to make IE's DOM W3C compliant imo.

> However, if this proposal makes it into IE.next, it wouldn't be a  
> problem (since it triggers standards mode in the other browsers, and  
> it's fairly safe to use).

Exactly.

-- 
Asbj?rn Ulsberg     -=|=-    http://virtuelvis.com/quark/
?He's a loathsome offensive brute, yet I can't look away?

Received on Tuesday, 13 March 2007 08:49:20 UTC