Summary

IE's page handling is still stuck many years behind the other browsers. It is getting better, but not as fast as Web developers would like, and older versions are forced to hang around for far too long. When it comes to sites based on tables, it is as good as any other current browser. But as soon as anything more flexible and accessible is used, it really starts to show its age, forcing many web developers to have to break their sites so that IE can render them. Unfortunately, other browsers usually suffer as a result, simply because they are not archaic enough to mimic IE's behaviour. It's just such a pity that a company with so much power refuses to accept the responsibility that comes with it, and instead feels that they should be allowed to fly in the face of the standards, regardless of the problems that that causes for everyone else. Even in versions that support more standards, lazy Web developers are still allowed to force the page to render using older, broken IE engines, which simply results in broken pages for other browsers, which cannot be expected to replicate such extensive non-standard behaviour.

If you are curious, you can try looking at the demonstrations in each chapter of this article again, using a browser that actually supports Web standards properly, unlike IE. Try the Opera browser, it's free, fast, feature packed, and importantly, its authors actually try to follow standards, so you can see how the demonstrations, and the standards they are using, should work.

Internet Explorer 7 fixed a few of the CSS issues discussed in this article. It is not perfect, but it is a lot better than before.

Internet Explorer 8 fixed a few more of the CSS issues discussed in this article, though it obviously has a few problems to clear up still. In my mind, it is only a very small change. In 4 years the few changes they have made are dwarfed by the advances made by competing browsers. Internet Explorer 7 and 8's standards changes are merely a token gesture - an attempt to claim that they still care, and are not out of the game. But it really is very little, certainly nothing like as much as the other browsers manage to improve on in a fraction of the same amount of time.

Internet Explorer 9 fixed more of the CSS issues discussed in this article, and did in fact add support for missing DOM functionality. It is still stuck behind competing browsers, however, and lacks important functionality. Some of that is described in this article, and others can be seen by running public tests like Acid 3, and reading my IE 9 article.

At least there are a few new (or old) parts of CSS and JavaScript that authors can play with. The problem is that Microsoft have repeatedly decided to abandon most of their operating systems, concentrating on the Windows Vista, and Windows 7. That is insufficient in my mind, since they have abandoned operating systems that are still supposedly supported (in terms of system patches). Ok, so there are very few people still using Windows 95, 98, ME, NT and 2000 (although I am often surprised by how many people I find still using these older systems), but there are still many computers running Windows XP. All of these will be stuck with Internet Explorer 6-8. There is no upgrade.

How does this affect us? It means that Internet Explorer 6-8 will not die. Even with Internet Explorer 9 being available, IE 6-8 will still be installed on a vast number of computers (assuming they do not change to using one of the better alternatives), and it will take several years for the numbers to dwindle. For all the improvements in IE 7-9, for most people they might as well have not bothered, because we will still have to cater for IE 6-8, and its limitations.

As for these pages, every one of them is constructed using only valid XHTML strict - the most easy of all HTML flavours to interpret - and CSS. You can check this on any page using the W3C HTML and CSS validators.

Don't click this link unless you want to be banned from our site.