In an ideal world, all Web browsers would flawlessly support a common set of standards, and Web builders could design their sites knowing that they would display properly for every visitor. Unfortunately, the real world is far from that ideal. The Web viewing public uses a wide variety of browsers and platforms that are plagued with a bewildering array of proprietary features and incomplete support for Web standards. Even the most standards-compliant modern browsers suffer from annoying inconsistencies in the way they render pages.
Creating Web pages that display as intended in all Web browsers is a practical impossibility; just supporting the more modern browsers requires all manner of CSS hacks and workarounds. Supporting older browsers often requires browser sniffing scripts and duplicate Web pages tailored to specific browsers. What a mess!
As a result, Web designers are forced to choose which browsers and platforms to design for and which browsers don't merit support. Whenever Web builders gather, a common discussion topic is what browsers they currently support and how they arrived at that decision.
To support or not to support...
The question of Web browser support tends to ebb and flow like the tides. It's a hot topic for a while, and then it retreats from the spotlight, only to return with renewed vigor later. It appears to be on the upswing recently. That's probably due, at least in part, to the rapid growth and acceptance of Mozilla Firefox after it reached its version 1.0 milestone. This seems to have created a general perception among Web builders that we're experiencing a shift to a new generation of browsers. Furthermore, many Web builders appear inclined to support a limited number of browsers, so adding support for a new browser, such as Firefox, often means dropping support for one of the older browsers.
Ethan Marcotte created a stir with his blog entry in which he stated that, although IE5/Mac was an important browser (note the past tense), he decided that it was no longer worth the extra effort required to support that browser with the full range of features on his sidesh0w.com site. Many comments on his site and other blogs question the timing of his decision, but few dispute the inevitable transition of this venerable browser as it fades from the Web mainstream into the status of a historic relic from a bygone day.
So, the question among Web builders isn't whether to cease supporting older browsers at some point, it's how to select which browsers to support and when (not if) they should cease supporting older or less popular browsers.
Browser support based on statistics
Many Web builders let statistics guide their decisions on which browsers to support. They use strategies such as supporting the top five browsers or dropping support for an older browser when it drops below some percentage (usually one or two percent) of the Web user population.
Many of those Web builders base their browser support decisions on general Web usage statistics from sources such as WebSideStory. However, in Eric Meyer's article, "Don't Care About Market Share," he makes a strong case for why you should base any Web analytics on your own site's server logs instead of the browser usage patterns on the Web as a whole. He also makes the point that you need to know the audience for your Web site and base your browser support decisions on the needs and usage patterns of that audience, rather than some generic Web demographic.
Interestingly, some of the comments on his article point out a potential problem with site-specific analytics—they can become self-fulfilling prophecies. For instance, a site that doesn't display properly in a given browser will alienate users of that browser. This lowers the usage stats for the browser, which could then be used as a rationale for not providing better support for that browser.
Jim Byrne, writing on the Guild of Accessible Web Designers site, argues against the statistical approach to browser support decision making. He makes a case for the Web being about making content accessible to everyone and the need to avoid disenfranchising minority browser users. He'd like to see every Web site fully support every browser and user agent. That may not be practical in the real world, but it's important to remember that dropping support for a browser means that your site will become inaccessible to users of that browser.
Suggestions for enlightened browser support
A primary goal of most commercial Web sites is to make its content available to the biggest possible audience. That includes supporting multiple browsers and platforms, as well as assistive technologies for handicapped users. Accessibility also makes good business sense. After all, you don't want to disenfranchise any potential customers. However, reality demands that you balance the desire to support every possible user agent against the time, effort, and cost to do so.
I don't believe that the best way to choose which browsers to support is to cease supporting a browser when its usage drops below some arbitrary level. Browser usage statistics provide an important data point in making the support decision, but it's not as simple as dropping support for a given browser when it reaches a certain percentage of your visitors.
Another important part of the browser support equation is how much time and trouble is required to support a given browser. It can take a lot of CSS hacks and other workarounds to achieve precisely the same effects across multiple browsers and platforms. However, sometimes, it doesn't take that much extra effort to maintain some level of support for an older browser. Often, you can design your site to avoid things that create problems for any browser, old or new. That makes it easy to support a broader range of browsers with less effort. If you want to add features to your site that older browsers don't support, try to implement them in a way that degrades gracefully in older browsers (i.e., the new feature may be missing in the older browser, but the page remains attractive and usable). Always supply at least a minimally-styled text version of your site content to every visitor, regardless of what browser they use.
Finally, don't automatically ignore any browser, no matter how small its market share. Always consider the impact of not fully supporting a browser and how that will affect the people who try to use that browser to access your site. Make a deliberate decision about supporting a browser after carefully weighing the cost of supporting the browser against making the site inaccessible to users of that browser.



