Forum latest

Microsoft, IE8, and the META-madness - Page 2
Written by Gizmo   
Wednesday, 23 January 2008 22:23
Article Index
Microsoft, IE8, and the META-madness
Page 2
Page 3
All Pages
See, DOCTYPE was originally intended to be used to enable validation of the HTML contained in the page, in other words, to define the type of content.  It was subverted as a hack in order to provide a way to provide some level of backwards compatibility for older web sites.  Unfortunately, a bunch of clueless web masters latched onto it as "Gee, my web page has to have this" and so included it in all their pages, in effect indicating that they wanted the page rendered in standards-compliant mode, and then coded their pages according to IE 6's bugged implementation of the standard.  The consequence of this was that many of those pages don't work properly in any browser other than IE 6, INCLUDING IE 7!  This is further complicated by the fact that many of Microsoft's OWN tools produce bugged HTML that only works in IE 6.

So now, MS have egg on their face from the IE 7 incident.  To their credit, as I said, they tried to make (and largely succeeded) IE 7 standards compliant, but in the process, they ended up making a lot of IE 6 sites no longer work.  As a consequence, a lot of MS customers suddenly discovered one day that their web sites no longer worked right and were understandably a little upset.

Comes now the development of IE 8.  MS, eager to tout how they are 'standards compliant', but also eager to avoid a repeat of the IE 7 fiasco, are trying to figure out how to avoid their previous problem.  Their proposal, hammered out with the afformention folks from WasP, among others, involves the use of a new META http-equiv tag that allows you to lock a web page to a specific version of browser.  The idea is that you put a tag like this:

<meta http-equiv="X-UA-COMPATIBLE" content="IE=8;FF=3;OtherUA=4">

near the very top of your page, right after the <html> tag, and before any other meta tags.  The magic of this scheme is that any site that doesn't specify the meta tag gets rendered in IE7 mode, which then implements the IE 6 'quirks' or 'standards' mode as appropriate.  Any site that DOES specify this meta tag gets rendered according to the browser version specified, or as close as possible.

From Microsoft's standpoint, I can understand why they want to do this:

  1. It reduceds pain for customers using existing MS tools, as well as ensuring that existing web sites continue to work.
  2. It reduces the amount of pain MS experiences as a result of support calls from people wanting to know why the site that worked just fine yesterday all of a sudden today no longer works properly.
  3. It allows MS to roll out browser patches on a deterministic schedule, rather than having to roll out bug fixes ad-hoc.
  4. It allows future MS products to specify the version of IE they will work properly with, hopefully ensuring that those products will continue to work properly when MS rolls out a new browser.

IMO, this is a bad idea for the web, and ultimately a bad idea for MS.  Why?  Well first, let me ask you a question.  Do you notice anything about the above reasons for doing this?  They are ALL centered on what makes life better for MICROSOFT.  In their defense, I can understand this; I get the whole point that Microsoft controls the desktop, and still has the dominant share of the web browser market, so making things as painless as reasonably possible for MS also makes things reasonably painless for Microsoft's users, who are (after all) a big chunk of the people we are writing web content for.

Unfortunately, this means that everyone on the web who has been trying to build standards compliant web sites now has to alter their web site in order to get it to render properly in IE 8.  You see, IE 8 won't render the site according to the standards unless the web designer TELLS it to; the web designer has to 'opt-in' to using the STANDARD.

This is, IMO, absolutely bass-ackwords.  The browser should assume that I want my pages rendered according to the applicable standards if I have gone to the trouble of writing a page that is standards-compliant.

Essentially, what Microsoft are asking is that the rest of us who are trying to do things right take it on the chin so that MS don't have to.

Understandably, this has generated quite an uproar.  The original announcement of this proposal apparently was made on A List Apart (which, BTW, is a VERY good resource for budding web designers; it is maintained by Eric Meyer who is the guru of CSS), and followed-up with a post on the IEBlog .  This announcement generated an enourmous amount of discussion here, as well as comments from the developers of FireFox, here and here, and from John Resig.

Don't Click Here Don't Click Here Either