Home Page
Magazine Top Page

As General Patton might say, "This is where it pays off: the training, the discipline,
and the standards compliant code."

IE8 and Standards Compliant Mode

March 2008

Microsoft has announced that IE8 will operate in three modes: standards compliant, IE7, and quirks. Early announcements held that the default mode would be IE7, but Microsoft has recently claimed that the default mode for IE8 will be standards compliant.

The Acid2 test is a cleverly coded page that displays a happy face if the web browser complies to standards. It tests for PNG transparency, object elements, positioning (absolute, relative and fixed), the box model, CSS tables, margins, generated content, CSS parsing, paint order, line heights and hovering effects.

If IE8 defaults to W3C standards, and passes the Acid2 test, what's not to like? Well, I've already read grumblings from a few web authors. The reason they're grumbling is that they have not been using W3C compliant standard code for the web pages that they've written. They've been sucked into the morass of quirks, workarounds and javascript routines to enable deficient browsers to render pages as intended. With IE8, most - if not all - of that spaghetti work will have to be re-written. Of course, they will charge their clients for that work. "So sorry," they'll say, "if only Microsoft hadn't tried to fix what was already working."

Very funny. They know, and I know, and probably you know, that non-standard code isn't working. And the authors who are grumbling are the ones who know better than anyone what an awful mess it is, because they are the ones who have been working through the hacks and workarounds to make deficient browsers display pages as intended.

I, and many other web authors, don't code that way. We believe that standarized code gives the best probability of accurate rendering over time and browser changes. I call that Durability of Code. If you've got a web site that falls apart when IE8 hits the scene, find someone among the many people who have been coding correctly for a few years and get it done right.