Chris Wilson confirmed today on the IEBlog that for a site to render in standards-compliant mode in IE8 it will need to include a specific meta tag:
- “Quirks mode” remains the same, and [will stay] compatible with current content.
- “Standards mode” remains the same as IE7, and [will stay] compatible with current content.
- If you (the page developer) really want the best standards support IE8 can give, you can get it by inserting a simple
The meta tag, also documented by Aaron Gustafson in the latest issue of A List Apart (with careful justification and support) looks like this:
<meta http-equiv="X-UA-Compatible" content="IE=8" />
While I concede that, in order to retain backwards compatibility with the sites of yesterday (and of five years ago), opting in to render a page in standards-mode in IE8 seems the only sensible option, one thing really irka me about this approach:
Hardcoding a reference to a specific browser as a necessary part of the page’s markup feels plain dirty.
It’s one thing to specify a character encoding or the language used by the page, but the agent with which it is compatible? Fundamentally and philosophically it just makes sense for a page to be completely browser-agnostic. In fact, the sheer mention of a browser in a page could be interpreted as a geek form of advertising, while other browsers pay the penalty for being better at adhering to the W3C specs. Will other browsers follow suit, such that web developers find it necessary to write something like this?
<meta http-equiv="X-UA-Compatible" content="IE=8;FF=3;Opera=9;Konqueror=3;Safari=3..." />
Still, I guess it beats using conditional comments.