Tuesday, February 24, 2009

When good browsers go bad -- and they all do Page 1

Better browsers. Better standards. Better tools. So why are Web pages still breaking?

Jeffrey Zeldman must have thought he'd never live to see the day. Ten years after he co-founded the Web Standards Project, all of the major browser vendors have shown renewed commitment to supporting World Wide Web Consortium (W3C)standards in the last few years -- and they're following through.

The specifications in the latest standards initiatives are tighter than ever. Web authoring tools are generating more compliant code. Two of the three rendering engines that underpin the major browsers in use today are open source. And, for the first time ever, the latest version ofMicrosoft's browser, Internet Explorer 8, will operate strictly in standards-compliant mode by default. In other words, it will support the W3C standards before it provides backward compatibility with nonstandard methods supported by Microsoft's previous browsers.

Those who lived through the browser wars of the '90s might think that hell has frozen over, were it not for one, small problem: Users still experience plenty of problems on the Web. A recent reportissued by browser vendor Opera Software ASA showed that the average page on the Web strays from WC3 page markup specifications 47 times. Overall, just 4.13% of the 3.5 million Web pages Opera searched were fully standards-compliant when tested against the W3C validation suite.

Why? Because there are still older Web sites that haven't been updated, and many developers still don't design their pages to meet modern standards and best practices. Different browser vendors still interpret some standards differently in some cases and don't fully implement all of the W3C-standard features in others. Developers for some Web sites still lock out users who have the "wrong" browser by using whitelists or blacklists that block unapproved browsers or browser versions.

As for the standards themselves, some existing specifications still suffer from ambiguities or leave some desired features undefined. And improvements in the thoroughness of new standards, such as CSS 2.1, also have a down side: They have slowed the standardization process -- a fact that has frustrated some Web developers and could tempt browser vendors to once again innovate outside of the standards framework.

Turning the Microsoft ship

Microsoft's Internet Explorer doesn't dominate the browser market in the way it once did, but it still has the largest market share by far. IEcurrently accounts for about 70% of the browsers in use, down from a high of about 95% in the pre-Firefox days. Of that 70%, about half are running IE7 while about one quarter are still using IE6 or earlier versions.

Idiosyncrasies in the various versions of IE -- especially IE6 -- have created problems for other browser vendors and Web developers. Even Microsoft has struggled to maintain backward compatibility with bugs, nonstandard methods and other issues it has created for itself. As a result, Microsoft has had to drag along an installed base of corporate and public Web sites that were built to the quirks of its previous browsers, trapping itself into endless iterations of standards noncompliance to provide backward compatibility.

Got IE6?
This site warns, "Users with IE7 will be unable to view the site properly."

"It's difficult for them to keep their own bugs alive over the years because they know that they can break thousands of pages," says Philippe Le Hegaret, interaction domain lead at the W3C.

For example, in an inconsistency in IE thatChris Wilson, platform architect for Internet Explorer, calls the "CSS overflow problem," Microsoft's IE7 browser displayed overlapping text when viewing Web pages designed to IE's nonstandard approach used in IE6. The Web sites were sending IE 7 a special case style sheet for IE6 while serving up standards-compliant renditions of the pages to Firefox and every other standards-compliant browser. The sites worked with every browser except for IE7.

No comments:

Post a Comment