Discuss: Beyond DOCTYPE: Web Standards, Forward Compatibility, and IE8
by Aaron Gustafson
- Editorial Comments
152 Untitled
“Old stuff should keep working. It would be backwards to require a change to the old stuff to keep it working so you don’t have to add a change to the new stuff. And highly impractical.”
Why should I have to crack open my already standards compliant web site and add a meta tag? If I have to do it, then at least let the people who wrote non-standards compliant sites and declared them standard do so too. Is my content rendered old by the release of IE8? So by your reasoning it should just work too.
posted at 02:17 am on January 24, 2008 by Craig Ching
153 Forget meta tags, let the browser validate the doc
This is bonkers. Just let old websites break.
If the websites are important, let the owner pay a web professional (that’s US!) to update it.
Doctype switching isn’t foolproof, because a valid strict doctype can be added to an invalid page by a CMS or an ignorant editor.
It’s pretty unlikely that a page will validate by accident though.
So here’s my idea – let the browser validate the page before displaying it, and then use strict or quirks mode depending on the outcome.
It negates the need for all this meta tag nonsense.
posted at 02:19 am on January 24, 2008 by Derek Ahmedzai
154 Untitled
We have web standards which is fine, eventhough the standards are leaving lots of room for different interpretation, but what we really need is a way to enforce the standards we have on the browser manufacturer. Don’t let the non-conformant browser enter the market.
posted at 02:20 am on January 24, 2008 by Jaed U
155 Why the default IE7 rendering is not a long term s
posted at 05:17 am on January 24, 2008 by Sander Aarts
156 Untitled
What I don’t get is why people even bothered with IE 6 “standards mode”?
Microsoft’s documentation and documented quirks/workaround all over the web clearly laid out the case for using quirks mode for both IE 5 and 6 and waiting until at least IE 7 came out to implement any sort of “standards mode” rendering shift using the DOCTYPE switch.
Microsoft said quirks mode WOULD NOT CHANGE and that standards mode WOULD CHANGE with new browser versions. It was a NO BRAINER for any (competent) developer wanting their pages not to break with IE 7 or other future IE release to induce quirks mode (IE 5 rendering) in IE 6 using an HTML comment or XML processing instruction before the strict DOCTYPE and then using standards-compliant markup and CSS, with a separate compatibility stylesheet for fixing browser bugs targeted specifically to “lte IE 6” using conditional comments.
People having done this wouldn’t have had to even touch the HTML again when/if a new IE browser version came out. The pages would render in standards-compliant mode for all current and future browsers that followed standards. The hacks/compatibility workarounds for non-standard IE issues would already have been dutifully contained and locked to the specific browser versions with the issues.
It’s funny how it worked out that IE 7 suddenly started to render XHTML pages like this PROPERLY in standards mode, having fixed the XML processing instruction bug that triggered the IE 5/6 quirks mode for XHTML strict documents. HTML pages using the HTML comment before the DOCTYPE still render properly and in quirks mode in IE 7. All of this WITHOUT CHANGING ANYTHING.
There is absolutely no reason pages should have broken when IE 7 came out if developers were competent to begin with and coded defensively. I mean, come on, the information has been available since IE 6 came out and quirks mode rendering workarounds have been increasingly available throughout this time for use in your conditional-comments targeted stylesheets.
On another note: it is this very magazine, A List Apart, who recommends this ignorant meta tag proposal, that is also responsible for teaching a plethora of unsuspecting novices to standards-compliant web development to trigger and use IE 6 “standards mode” — knowing full well that that mode was far from compliant and was subject to future breakage as the mode was updated with each future IE release (at least until IE caught up to modern standards-based rendering levels).
I mean, do you think this solution could possibly be well-conceived when is is evident that practices recommended by A List Apart are part of the problem?
Having run across several stories confirming Microsoft is, in fact, implementing such an ill-considered scheme in IE 8 (!), let me just say this:
Come on, Microsoft! Open up a discussion on this issue before blindly taking the first potential solution that falls in your lap and forcing us web developers and customers whom are both yours and ours to deal with the potentially massive blowback!
And to ALA: be mindful of your belief that you possess some superior insight that affords/obligates you to profess the best course for the future of the Web. We are all in this together and all deserve to be heard and considered in the solution to our common problems.
Thank you for your time.
posted at 06:32 am on January 24, 2008 by Ray McCord
157 I'll keep it short
What’s most surprising about this is not yet another doctype switch, but that it was the WaSP that came up with it. This can’t be blamed on the the IE-team.
This is the day that the WaSP failed their mission, and we started openheartedly embrace and encourage the versioned web. Let this day be known as “the day the core of the web failed”.
posted at 10:32 am on January 24, 2008 by Emil Stenström
158 Not officially endorsed by WaSP. <----------------
Not officially endorsed by WaSP.
http://annevankesteren.nl/2008/01/ie-lock-in#comment-6376
posted at 01:39 pm on January 24, 2008 by Ray McCord
159 Untitled
READ THAT AGAIN: NOT OFFICIALLY ENDORSED BY WASP.
This was a covert job between:
- Chris Wilson of Microsoft ***
- individuals not representing WaSP ***
http://annevankesteren.nl/2008/01/ie-lock-in#comment-6376
posted at 01:41 pm on January 24, 2008 by Ray McCord
160 Derek Ahmedzai wrote...
“So here’s my idea – let the browser validate the page before displaying it, and then use strict or quirks mode depending on the outcome. It negates the need for all this meta tag nonsense.”
This already happens. If the page contains the right doctype it will be shown in standards mode. If it has no doctype, or a non-strict one, it gets shown in quirks mode. But the whole page isn’t validated first. If it was, that would mean a huge delay when surfing, as each page would have to be checked first. Is that really what you want?
posted at 02:21 pm on January 24, 2008 by Chris Hester
Discussion Closed
New comments are not being accepted, but you are welcome to explore what people said before we closed the door.
Got something to say?
Discuss this article. We reserve the right to delete flames, trolls, and wood nymphs.
Create a new account or sign in below if you’d like to leave a comment.
Subscribe to this article's comments: RSS (what’s this?)






151 I welcome this proposal
Dylan, you’ve got it. I’m astounded how few others here have.
This is about providing a way for IE to move into the standard compliant world, whilst allowing for the gazillion of extant web pages that do some ‘special’ when they detect IE as the browser to not break.
This is why what works for FireFox, Opera, Safari etc, doesn’t work for IE. There simply aren’t huge numbers of web pages that rely on odd behaviour of those browsers to render correctly. It’s not that they don’t have odd behaviour, it’s just that because they don’t have the 80% market share, most web authors don’t bother to do something special to their pages to cope. For IE, it happens as a matter of course.
What X-UA-Compatible is, is a statement of conformance by web authors of their page. It says, “I have tested this web page in IE6, Fx2 etc and it looks and behaves to my satisfaction. Any browser that treats my page exactly as one of these browser versions does, will handle my page as I intended it to”.
To the browsers it is a HINT. Most browsers can and will ignore it. That is fine. Microsoft have stated that they will make use of it in IE to decide how to treat web pages. If it’s not there, then the page will be assumed to be a legacy page and will get legacy rendering. If it is there then it will be rendered according to the author wishes, either to a specific version that the page has been tested against, or to the latest version if the author so prefers. I fail to see what’s so objectionable about that.
To address some specific points raised:
Security. The problems raised here, do not affect authors, only Microsoft and web users. Microsoft’s problems are their own, and we can safely leave them to worry about how to deal with issues like XSS and DOM manipulation across different versions. For users too, there is a simple solution for anyone concerned about the security issues of this – download yourself a copy of Firefox/Opera/Safari and use that, since none of those are likely to adopt X-UA-Compatible.
One alternative suggestion made would be for IE8 to remove all the elements that allow browser sniffing (not just the user-agent string) and then legacy web pages would be forced to treat the browser as if it were a standard compatible one. Sadly that’s a non-starter because, as anyone who uses Opera for any length of time knows, sooner or later you visit a site that simply says something like “Your browser is not supported – please use IE”. While, no doubt, the likes of Anne van Kesteren, who works for Opera, and others here, would love to see IE reduced in authors minds to the level of Opera, it’s simply not going to include anyone at Microsoft.
I’m no Microsoft fan-boy. I hate the way they left IE to rot for so many years and in consequence did so much to create the state we’re currently in.
I have wasted time struggling with IE. Recently my web site: – worked correctly in IE6 – worked correctly in IE5 – worked correctly in Firefox – worked correctly in Opera 9 – worked correctly in Konqueror – HTML validated 100% – CSS validated 100%
and when IE7 was released – it broke in that.
I don’t see why that should happen again which is why I am pleased to be able to mark up my pages and say to IE8 – “I’ve fixed and tested my pages in IE7 – if you can render and behave like that did, I will not get support calls telling me my pages are broken and I can get on with more productive work”. At some convenient point later, I will get around to testing my site in IE8, and if everything’s OK I will tweak my CMS and all pages will be served marked as treat-as-IE8 instead.
I wish we weren’t starting from here, but this is where we are, and this proposal is the most elegant, pragmatic solution.
posted at 02:15 am on January 24, 2008 by Nicholas Stimpson