Chapter 1. Designing for a Variety of BrowsersContents:
Browsers Most web authors agree that the biggest challenge (and headache!) in web design is dealing with the variety of browsers and platforms. While the majority of HTML elements are reliably rendered in most browsers, each browser has its own quirks when it comes to implementation of HTML and scripting elements. Features and capabilities improve with each new major browser release, but that doesn't mean the older versions just go away. The general public tends not to keep up with the latest and greatest -- many are content with what they are given, and others may be using the computers of a company or institution that chooses a browser for them. The varying functionality of browsers has a strong impact on how you author your site, that is, which web technologies you can safely use to make your site work. How do you design web pages that are aesthetically and technically intriguing without alienating those in your audience with older browsers? Does a page that is designed to be functional on all browsers necessarily need to be boring? Is it possible to please everyone? And if not, where do you draw the line? How many past versions do you need to cater to with your designs? There is no absolute rule here. While it's important to make your content accessible to the greatest number of users, experimentation and the real-world implementation of emerging technologies is equally important to keep the medium pushing forward. The key to making appropriate design decisions lies in understanding your audience and considering how your site is going to be used. This chapter provides background information, statistics, and current wisdom from professional web designers that may help you make some of these decisions. It begins with an introduction to the most common browsers in use today, their usage statistics, and supported features. After describing the browser landscape, it discusses various design strategies for coping with browser difference and, finally, what's being done in the industry to set things straight again. 1.1. BrowsersBefore you can develop a strategy for addressing various browser capabilities, it is useful to have a general knowledge of the browsers that are out there. While web browsing clients are increasingly being built into small-display devices such as PDAs, telephones, and even car dashboards, this chapter focuses on the traditional graphical computer-based browsers that developers generally keep in mind. The particular needs of handheld devices are discussed further in Chapter 32, "WAP and WML". 1.1.1. The "Big Two"The browser market is dominated by two major browsers: Microsoft Internet Explorer and Netscape Navigator. As of this writing, Internet Explorer is in Version 5.5 for Windows (5.0 for Macintosh) and the Navigator browser is one component of Netscape 6 (they did not release a Version 5). Together, the "Big Two," including their collective past versions, account for over 95% of browser use today. Since 1994, these two contenders have battled it out for market dominance. Their early struggle to be cooler than the next guy has resulted in a collection of proprietary HTML tags and incompatible implementations of new technologies (JavaScript, Cascading Style Sheets, and most notoriously Dynamic HTML). On the positive side, the competition between Netscape and Microsoft has also led to the rapid advancement of the medium as a whole. Netscape publishes information for developers at http://developer.netscape.com.Information about the Netscape 6 release can be found at http://home.netscape.com/browsers/6/index.html. For information on designing for Internet Explorer, visit Microsoft's Internet Explorer Developer Center (part of its MSDN Online developer's network) at http://msdn.microsoft.com/ie/default.asp. Additional information is available on the Microsoft product pages at http://www.microsoft.com/windows/ie/ (for Windows) and http://www.microsoft.com/mac/products/ie/ (for Macintosh).
1.1.2. Other BrowsersMost web authors base their designs on the functionality of Navigator and Internet Explorer on Windows systems, since they claim the lion's share of the market; however, there are a number of other browsers you may choose to take into consideration. 1.1.2.1. Internet Explorer on the MacintoshFor better or worse, Internet Explorer releases for the Macintosh platform have varied in functionality from their Windows counterparts. Web usage statistics indicate that Mac users account for just 2-3% of global web traffic, but if your site has Mac-targeted content, keep the following browser differences in mind. IE 5.0 for the Mac (the current version as of this writing) was the first browser on any platform to be almost fully standards-compliant, thanks to its specially developed Tasman rendering engine (see Section 1.6, "The Importance of Standards" later in this chapter). In general, you can treat Mac IE5.0 like Windows IE5.5 or Netscape 6. The Macintosh version of IE4.0 lacks significant functionality found in its Windows sibling. This Mac version has no embedded font support, no support for CSS filters and transitions (such as drop shadow effects), and a very problematic DHTML implementation. Some of these issues were addressed in Version 4.5 (the first Mac version that significantly deviated from the Windows version). As a general guideline, treat Mac IE4.0 and 4.5 like Navigator 3.0. 1.1.2.2. America OnlineAmerica Online subscribers use a variety of Internet Explorer browsers, ranging from Version 2 to 5.5 (the most current as of this writing). The browser version number is not necessarily tied to the AOL release, as noted in this excerpt from AOL's developer site: Beginning with Windows AOL 3.0 (32-bit), theAOL client does not have a browser embedded, but instead uses the Internet Explorer browser the user already has installed within their system. On the Mac and 16-bit Windows clients, theAOL client containsvarious versions of Internet Explorer embedded directly within the client, andindependent of the versionof Internet Explorer installed outside AOL in the system. Therefore, browser compatibility is mostly independent ofany specific AOL version. As of this writing, approximately 80% of AOL users view the Web on Windows machines using Internet Explorer 5.0 or higher. While this is encouraging news, the reality is that Internet Explorer's functionality is limited somewhat when used in conjunction with the AOL client. This is due to the way the specific AOL clients interact with the browser and AOL's reliance on proxy servers and image compression techniques. Many web designers have been horrified to see their site design (which works perfectly in all the major browsers) once it's been run through the AOL system. Fortunately, AOL publishes a site specifically for web developers who want their sites to be accessible and attractive to AOL users. Of particular use is the browser chart, which provides a specific listing of each of its browsers (by release and platform), the technologies and features supported, and a breakdown in percentage of users for each browser. It also provides a style guide for optimizing web pages for its newly released AOLTV set-top browsing device. AOL's web developer site can be found at http://webmaster.info.aol.com. 1.1.2.3. WebTVWebTV was the first to bring web surfing to the living room with a set-top box, an ordinary television, and a remote control (an optional keyboard is also available). WebTV uses its own specialized browser for viewing web pages. The WebTV browser supports HTML 3.2 (plus a few 4.0 tags and handful of WebTV proprietary tags), graphics, tables, frames (with some problematic behavior), forms, cookies, JavaScript 1.2, a subset of the CSS1 Style Sheets specification, a wide variety of audio and video formats, and Flash 3. The browser does not support Java, PDF files, or streaming Flash formats. Because WebTV displays web pages on televisions, it introduces new concerns regarding color and screen size. WebTV publishes a developers' resource where you can find specific information regarding developing sites for WebTV (http://developer.webtv.net) It includes information on HTML and various web technology support. You may also choose to download their free tool called WebTV Viewer (available for both Windows and Mac, although the Windows version is more up to date as of this writing). WebTV Viewer shows how your web page will look and perform on WebTV, right from the comfort of your own computer. For information on WebTV Viewer, go to http://developer.msntv.com/Tools/WebTVVwr.asp. 1.1.2.4. OperaOpera, in Version 5.0 as of this writing, is a lean and mean little browser created by Opera Software in Oslo, Norway. It is currently available for Windows and Linux platforms, although the Opera 5 for Mac beta version was released in mid-2001. Opera is free if you don't mind ad banners as part of the interface. To register the browser and get rid of the ads, the price is $39. Opera boasts extremely quick download times and a small minimum disk requirement (around 2 MB, compared to IE's 24 MB download). Opera is respected for its exact compliance with HTML standards. Sloppy tagging that gets by the larger browsers (such as missing closing tags, improper nesting, etc.) does not render correctly in Opera. Opera 5.0 supports Java, HTML 4.01, Cascading Style Sheets (CSS1 and the vast majority of CSS2), JavaScript, and DHTML. While it does accept plug-ins, the word on the street is that they are somewhat difficult to install. The general public is not likely to flock to Opera, and it never so much as blips in the browser statistic charts; however, many designers continue to test their sites in Opera to make sure their code is clean. For more information about Opera, see http://www.opera.com. 1.1.2.5. LynxLast, but not least, is Lynx, a freely distributed, text-only browser that offers fast, no-nonsense access to the Web. It stands proud as the lowest common denominator standard against which web pages can be tested for basic functionality. Lynx may be a simple browser, but it is not stuck in the past. Lynx is constantly being improved and updated to include support for tables, forms, even JavaScript. People do use Lynx, so don't be surprised if a client demands a Lynx-compliant site design. Lynx is also important to users with disabilities who browse with Lynx and a speech or braille device. The Extremely Lynx page is a good starting point for finding developer information for Lynx. You can find it at http://www.trill-home.com/lynx.html. For information on designing Lynx-friendly pages, see http://www.cs.umanitoba.ca/~djc/personal/lynxfriend.html. Copyright © 2002 O'Reilly & Associates. All rights reserved. |
|