While discussing the strictness of XML parsers Hyatt points out the sad reality of HTML rendering: “The #1 reason that HTML pages render incorrectly in alternate browsers is because of differences in error handling and recovery.”
Specifically, IE is very lax in dealing with badly-coded HTML. IE also abides by its own versions of HTML and CSS standards. The result: websites that don’t work right in anything except IE for Windows.
Why is that a problem, you say? After all, IE Win has 90% of the market – they’re the de facto standard, right?
De facto standards are fine when there aren’t any other standards to work with – but there are. This was not always the case – in the early untamed days of the web, Netscape introduced its own proprietary tags (such as FONT, BLINK and LAYER) and standards when the W3C, the web’s standards body, dragged its feet. During the browser wars, Microsoft just mimiced Netscape’s example. Even today, you’ll see pages stating, “Best viewed in Such-and-Such browser”.
Today, the W3C have clear outlined standards for HTML, CSS, and XML. Most other browsers such as Apple’s Safari, Mozilla and Konqueror follow these standards. (Aside: Opera straddles the fence between W3C-ness and IE-ness, making it particularily quirky to work with.)
If you run a site of commerce, why bar entry to Netscape 7 users or people with Macs? You’ve just lost 10% of your potential customer base.
In the end, open standards promote choice. Why lock everyone into a single software product that only runs on a single platform?
In other news, apparently some folks in Norway actually liked the old Silentblue “Blue Plaster” design …