Don’t lock me out!
Perhaps you haven’t noticed it — maybe you use IE 4 or 5 or Netscape 4 — but there are a lot of sites which shut out some of their would-be visitors. It can be on the basis of browser choice, or version, or plug-in. It can even be because the site’s designer thinks every visitor will be able to view graphics. It is always because the designer has made unwarranted assumptions about what the visitors to his site will be using to look at it. (The alert will note that “look at it” in itself contains a huge assumption.)
It cannot be said often enough: you don’t know, and there is no way you will ever know, what hardware and software combination your site’s visitors will use to access it. Yes, the majority will use one of the recent versions of the big two browsers — Netscape or Internet Explorer. The minority who use other browsers, or older versions of the big two, are not an insignificant minority. WebTV is frequently ignored by bleeding edge designers, but in the USA at least it is a platform used by older people with money to spend online. Do I have to spell out how foolish it is to lock such potential customers out of your site?
Plug-ins
By far the most egregious offenders in this respect are sites which use Flash or Shockwave inappropriately. (Yes, it is sometimes appropriate to use them, though you wouldn’t think it to see most sites that use the technology.) It is possible to design an entire site using such technology, and because things move and sounds click the lovers of trendy think “Wow! That’s cool!”
It doesn’t occur to them that: if you have a slow Internet connection it can take forever for a Shockwave animation to download; that it totally screws up site navigation because the back button no longer behaves as it should (it may take the user away from the site rather than to the previous page); or that if you are not using IE or Netscape on a Mac or a Windows machine there may well not be a plug-in available for your platform to allow you to see this work of art.
Sometimes the Shockwave or Flash animation is effectively nothing more than a huge splash page — something which some people loathe anyway. The wise designer, if determined to use one anyway, will provide a link to bypass the intro (or the shockwave part of the site) and go directly to a plain HTML part of the site. The truly fuckwit designer, on the other hand, may well make such an option part of the Shockwave — so you need to be able to view the intro to bypass it!
And no, it isn’t a good idea to put in a note saying that such-and-such a plug-in is needed to view the intro/the site with a link to Macromedia or wherever to get it. First of all, you need to realise that most people faced with such a suggestion simply go elsewhere. They may be unhappy about downloading something — anything — or they may simply be peeved at your rudeness, or perhaps they just don’t have the time to faff around. It doesn’t really matter. The important thing is, they have gone. Tough on you if you wanted to sell them something.
The second thing you need to grasp is that they may not be able to download your favourite plug-in. This might be because it isn’t available for their platform, or for their browsers (strangely, there isn’t a lot of call for a Shockwave plug-in for Lynx). It could be because they are at work, behind a firewall, and unable to download anything no matter what hardware they have.
Which browser is that?
Even sites using nothing more complex than HTML and JavaScript can leave some users looking at a blank window. One of the banes of every web designer’s life is the fact that neither Netscape nor Internet Explorer have (until recently) made much of an effort to comply with standards they have helped to produce. Proprietary elements and proprietary attributes meant that a page which looked great in IE could look like a mess in Netscape — and vice versa.
One way round this, particularly when using complex DHTML, is to produce two sets of pages, one for Netscape and one for IE. JavaScript could be used to detect the browser in use and direct the user accordingly. Except…
What happens if the user isn’t using Netscape or IE? Well, I came across an excellent example of what happens through Web Pages That Suck about a year ago. The site’s deservedly dead and gone now.
If you went to Lechters Online using either of the big two browsers with JavaScript enabled you would have been directed smoothly to an appropriate part of the site.
Go there with any other browser — iCab, Opera (unless it has been set to spoof Netscape or IE), Cyberdog, etc. — and you were left staring at a blank screen. The entirety of the first page was this piece of code:
<html>
<body>
<script language="JavaScript1.2">
var b = navigator.appName
if (b=="Netscape") window.location="Netscape/"
else if (b=="Microsoft Internet Explorer")
window.location="Explorer/";
</script>
</body>
</html>
Note that it wasn’t a properly structured page at all. There is just barely enough HTML there to prop up the bit of JavaScript — and ‘bit’ is the word. Most sites would probably try to do something a little more sophisticated, but this site was only interested in the question Is it Netscape or Internet Explorer?
That was a particularly bad instance, and when you see what happens with various browsers you can see why. The first thing is what happens with Netscape 6. Netscape 4, remember, is now officially dead and buried. N6 is where it’s at for Netscape. If you visited Lechters Online with it the page you got — the so-called ‘Netscape’ page — simply fell apart. It not only looked a mess, it was unusable.
You can’t assume that any given version of Netscape (or IE) will behave identically to any other particular version of Netscape (or IE) — even, sometimes, if they bear identical version numbers.
As I mentioned above, Opera can identify itself as either Netscape or Internet Explorer (as well, of course, as Opera) according to the user’s choice. It has this facility, and it isn’t the only browser with it, precisely because so many half-arsed ‘web designers’ are too arrogant to remember there are other browsers out there. Of course, Opera isn’t IE or Netscape, and it was no surprise then that Lechters Online didn’t work properly in Opera, should it trick its way in.
You can’t assume everyone has either Netscape or Internet Explorer.
Bad scripts
Of course, you can write a redirection routine or build your site in full knowledge that there are scores of browsers out there and still shut people out.
What happens if someone turns up at your site with JavaScript disabled, or with a browser which does not support it? If your redirection depends on it, it will be blank screen time again. The sensible thing to do is provide a text link (possibly hidden in a <noscript> element) to the appropriate parts of the site. Make sure, though, if JavaScript is not available that you don’t send Netscape 4 users to pages dependent on style sheets.
Just as disastrous from the point of view of the user without JavaScript is the site whose internal links depend upon it. There may be reasons for wanting to do this, but if a user has JavaScript disabled, the links might as well not be there. Don’t grumble about users turning off JavaScript — cope with it.
For one thing, there is no need to have the links only work with JavaScript. Instead of putting the JavaScript call in the href attribute of the anchor tag, put it in the onClick event attribute like so:
<a onClick="goWherever('thelink.html');return
false" href="thelink.html">
If JavaScript is available, it will use the function goWherever() and then the return false will stop the rest of the element being acted upon. If JavaScript isn’t available, the onClick event attribute is ignored and the usual HTML code after it sends the user to the desired page.
JavaScript isn’t the only scripting language out there, of course, but JavaScript is the only one it is reasonable to assume most users will have available. Unfortunately, a lot of designers who use IE on a Windows box imagine that because they have, say, ActiveX or VBScript, then everyone will. ActiveX doesn’t even work in every version of IE, only the Windows versions — and many people who have it available disable it because of security concerns. There are not many sites which totally fail because they rely on ActiveX, but there are some.
Assumption is the mother of cock-ups
When a user can’t get into a site or can’t do anything if the first page loads, it is always because the designer has made assumptions about what technology the site’s users will have available to view it. A lot of people have Shockwave and Flash — but not everyone; a lot of people surf with JavaScript available — but not everyone; a lot of people can see images when they surf — but not everyone (so that page which relies on an image map is no use to them…). The bottom line is: you have no control over what hardware/software combinations your site’s visitors are using. So you should make your pages accessible to as many people as people.
That, really, is the ethos of the Web. At root it is supposed to be a flexible medium for delivering information to users irrespective of the way they access it. That may sound somewhat idealistic, but using HTML properly — to describe the logical structure of a document, not its appearance — can make that a reasonable aim. With increasing CSS support, there is no reason why that cannot mean accessible, attractive documents — which might not look so snazzy on some older browsers, but they will be usable. And isn’t maximising the number of people who get your message what it’s all about?
© DC 2000, 2001. All rights reserved.


