IE8 Promises Both Backward Compatibility and Standards Compliance in One Box

! Warning: this post hasn't been updated in over three years and so may contain out of date information.

Internet Explorer 8Back in the “good old days”, when Netscape had lost the browser war and everyone (bar a few Linux geeks; but no one cared about them) used IE6, the life of a web developer was easy. One simply developed a website, checked it looked OK in IE and then published it. Then Firefox appeared and started to steal back some web users from Microsoft. This led to the need for web developers to implement “standards mode” pages. What this basically meant was that they specified the document type so that Firefox knew how to render it and then worked around the oddities of IE6 (which infamously had its own “standards”, which weren’t that standard really).

All was well for a time. Then IE7 appeared on the scene. IE7 was a huge paradigm shift for Microsoft. It actually sought to be standards compliant. So it rendered “standards mode” pages according to the real standards, rather tha IE “standards”. In so doing, they “broke the web”. In reality naive, slapdash web developers broke the web by supplying IE6 work-arounds to all IE6+ versions, rather than targeting them specifically at IE6. This meant that their sites failed to work properly when an IE7-equipped user visited their site. Microsoft were blamed for this however, for those pages worked fine in IE6 and not in IE7 and so obviously (people are stupid, lazy and blame the “obvious” all too often) IE7 broke things.

Our little story now brings us to 2008 and IE8. Microsoft tried to be standards compliant with IE7 and got their fingers burnt. So will they abandon such lofty ideals with IE8 and leave the quirks in it? Well yes and no is the answer. IE8 will be the most standards-compliant of all IE versions. IE8 will simultaneously also be fully backward compatible with IE7. What is really great though, is that the website designer, rather than the user, gets to choose whether IE8 is compliant or backward-compatible. By default, it acts like IE7. If however you want it to comply with the standards, simply put:

in the header of your page. This simple addition then turns on the full standards-compliance mode when rendering your page.

Even the most anti Microsoft people must admit that that is a pretty neat solution.

You can read (far) more about this by visiting this article on Standards and IE8 and by reading Beyond DOCTYPE: Web Standards, Forward Compatibility, and IE8.

If the above has left you think “Uh?”, here is a post that explains the whole lot far more simply using toy lemurs. The author – Kate Bolin – is clearly rather bonkers! 😀