The Bad Old Days
Back in the 90s and early 2000s, the world was a simpler place. We only really had to worry about 2 browsers, Internet Explorer and Netscape Navigator. We had HTML 4.01 and we were happy with it. There was none of this CSS rubbish – we just put all our presentation and structure in the same HTML page and had done with it. We didn’t even have to get our markup spot-on. I mean, the browser would do a decent job of sorting out our sloppy code. If the user struggled with anything that was their problem, not ours – after all we were the only site on the whole world-wide web doing what we were doing, where else were they going to go?!
Fixing Our Mistakes
Thankfully those days are long gone. In the last few years, I’ve noticed web designers have made a concerted effort to make sure standards compliance, usability and accessibility are the foundations of their work. From making sure UI components are readable by screen-readers for our visually impaired users to nailing down our HTML markup to pass through the W3C validator, we’ve all been making sure that our designs are as easy to use for as many people as possible.
We’ve been helped out a lot by the W3C (the World Wide Web Consortium). If you haven’t heard of them, they’re the guys that work out what we’re going to be using to make websites appear online. They work to generate new versions of (x)HTML and CSS to ensure that browser companies have strict, all-encompassing standards to guide them. Those standards dictate how they should display our websites and by proxy how we should be building them. They’re nice about it though, when they develop a new standard, they allow us to use it in “strict” or “transitional” mode. This was the case with XHTML 1.0, and that’s where our tale really begins. So, when the W3C released XHTML, they changed the face of HTML. We’d all been used to HTML 4 and its general leniency with respect to our code quality. Couldn’t be bothered to end that
<p> tag? No worries, just leave it. We’ll work it out. Well not any more. Now everything you opened had to be closed (even image tags! What’s that about?!) and we were all forced to tighten up our act. This was a fantastic move as it made it much easier to emphasise standards compliance across the browsers and improved the chances of screen-readers understand what was going on. As designers, we welcomed this with open arms, it made sense, it was clear, we were happy.
You Can’t Please All the People, All the Time
However, all was not sunshine and rainbows. Some of the changes in XHTML angered people. A prime example of this was the loss of the “target” attribute on links. These played a crucial role in the bad days of browser frames, but in later times they were mainly used to open links in a new browser window. When they were removed from the XHTML specification, people were up in arms – “How do we open links in new windows now?!”. You only really had 3 options:
- Produce Non-Standards Compliant code (bad)
- Remove the target attribute and let users decide how to open their links (good!)
The Cardinal Rule: Don’t Confuse your User
Before tabbed browsing, it was uncommon for users to open links in a new window by choice. Instinctively we all want to keep users with us for as long as possible, so we would open a new window to improve our chances of them coming back to us. However, now we’ve got tabs, I think there’s far more use of the “Open in New Tab” – It’s only a control-click away! If the user wants to stick with us, they’ll open the link in a new tab. If they’re done and want to follow the link, they’ll just click through. If we open a new one, they’ll just close it. By forcing them to take the extra step, we’re actually just causing an annoyance and lessening the likelihood of them returning.
Forcing a window open also disrupts the user’s workflow. Semantically, when you click a link, you want to follow it. It can be disorientating when someone throws you into a new tab when you’re not expecting it. Again, this is detrimental to the user-opinion of our site and may reduce return rates.
So there you have it, that’s the end of my little rant. I think we should ban the “target” attribute to room 101 for ever. Let the user decide how they navigate the web. By all means guide them, but don’t be a dictator. It’s generally not a good policy. No-one likes a dictator. And at the end of the day, we all want to be liked, especially if it’s good for business.