Dealing with Older BrowsersWednesday, July 20, 2011
If you’re part of a website development company, you’ve probably been through this experience at least once: while putting the finishing touches on a client’s website you get a call from the client saying that the site looks broken. You ask a few questions and realize they’re using a browser that’s a decade old.
People use antiquated browsers for many reasons, but in many cases they’re either comfortable with their browser of choice and don’t want to change, or they simply don’t know that a newer version is available.
Many sites that look perfect in new browsers appear broken in older ones. This has to do with certain older browsers’ quirks, not to mention a lack of support for technologies that didn’t even exist when the browser was developed.
Should you support older browsers? To what extent should you let this limit you from using new technologies? There’s always a tradeoff; for example, you could build sites that are supported on every browser since Netscape, but you’ll be spending a lot of extra time, and you won’t be able to do a lot of exciting new things with JQuery, HTML5 and CSS3.
Solution 1: Know your clientele
Who will be viewing the site you’re developing? If it’s a site for a nursing home, you might want to consider supporting old browsers. On the other hand, if the site is for a new video game, you can probably assume that most viewers will be on newer versions. If you don’t know what the site’s target market is, ask the client.
Solution 2: Set expectations
If you’re going to forgo support for older browsers, it’s a good idea to set expectations upfront with your client. You may even want to make sure you put this in your contract; display a list of “included browsers” and versions that you code for. Beyond those, you can say, you cannot guarantee that everything will look perfect. Explain why this is necessary and the client won’t think you’re just doing a lazy, incomplete job.
Solution 3: Add a notification
Solution 4: Put in some extra work
If you do decide to support older browsers, you may have to do some extra work.
I’ve found that the main issues are with positioning structural elements and using transparent images. Workarounds like this take a bit more work, but you’ll have your bases covered. You’ll start to know what’s going to work in old browsers and what isn’t, and what you need to do to get things working.