Linked Style Sheets in HTML To apply the style sheet to our HTML page, we’ll need to tell the browser which stylesheet to use.. I recommend astandard testing suite consisting of four bro
Trang 1If the name of the font family has more than one word, enclose it in quotes Here aresome examples of CSS rules using font-family:
body { font-family: Arial, sans-serif; } h1 { font-family: “Courier New”, monospace; } h2 { font-family: “Times New Roman”, serif; }You’ll learn more about font families and how to use them in Hour 8
A Simple Style Sheet
Using just the simple properties and values you’ve learned so far this hour, you already cancreate a basic style sheet; an example of a complete style sheet is shown in Listing 2.1
L ISTING 2.1 A Basic Style Sheet with Color, Size, and Font Declarations
/* basic-2.1.css */
/* Written by Kynn Bartlett <kynn@kynn.com> */
body { font-family: Arial;
color: black;
background-color: white; } /* I think Verdana looks nice for headlines */
h1, h2, h3, h4, h5, h6 { font-family: Verdana, sans-serif; } /* This puts the second level heading in red */
h2 { color: red; } address { font-family: Verdana, sans-serif;
font-size: smaller; }
You can find a copy of this style sheet on the Web athttp://CSSin24hours.com/02/basic-2.1.css.
Linking a Style Sheet to an HTML Page
A style sheet by itself doesn’t really do anything except sit there on your hard drive orWeb server If you try to load it in your browser, it will just display as plain text To actu-ally use the CSS rules, you need to have a file with markup, such as an HTML page, andyou need to add an HTML tag to link the CSS file to the Web page
A Simple HTML Page for Styling
Listing 2.2 shows the structure of a basic HTML page like one you might find on theWeb; it has headlines, paragraphs, horizontal rules, and even a little table on the side You
Trang 2can download a copy of this file from http://CSSin24hours.com/02/basic-2.2.htmlbecause that’s easier than typing in the whole thing.
L ISTING 2.2 A Simple HTML File That Needs Styling
<tr> <td>Three ***</td> <td>Above Average</td> </tr>
<tr> <td>Four ****</td> <td>Highly Recommended</td></tr>
<tr> <td>Five *****</td> <td>A Must-See!</td> </tr>
This movie perfectly captures the feelings of reading
<cite>The Lord of the Rings</cite> books by J.R.R Tolkien
— large, impressive, fantastic, and mythic, but also large, ponderous, slow, and meandering.
</p>
<p>
Now, I like the original books as much as any other Science-fiction and fantasy fan, despite getting only halfway through the second of three books before giving
up Nevertheless, I gaped in awe at the majestic landscapes of Middle Earth depicted on the big screen rather than only in my imagination I saw elves, hobbits, wizards, dwarves, orcs, and even a few humans come to life, and it all <em>felt right</em> — but it also felt very long, nearly 3 hours in length, even with the plot pared down for the movie.
2
continues
Trang 3<p>
Some story points were inexplicably confusing; bit characters wander off and onto the screen, and none ever stop to really explain what the big deal is about the ring If I hadn’t read the first book already, I might have been scratching my head in confusion But
ultimately, <cite>Fellowship of the Ring</cite> is a treat designed especially for anyone who loves Tolkien’s epic work of mythic fantasy; it’s a faithful, if exhausting, adaptation of this 20th-century classic.
basic-2.2.html.
L ISTING 2.2 Continued
Trang 4Linked Style Sheets in HTML
To apply the style sheet to our HTML page, we’ll need to tell the browser which stylesheet to use We do this by using the <link>element of HTML, and we’ll use the
basic-2.1.cssfile from Listing 2.1
The<link>tag can appear only within the <head>section of our HTML page To linkthe style sheet, I open the HTML file and add the following line (shown in bold):
Adding More Styles
If we want to add more to our page, we can just fire up the text editor and change theCSS file Alternately, we could create a different style sheet and change the <link>tag’s
hrefattribute
Listing 2.3 shows a longer style sheet, and Figure 2.4 is our “after” shot, applying the newstyle sheet (which can be downloaded from http://CSSin24hours/02/basic-2.3.css)
Trang 5L ISTING 2.3 More Styles to Make Our HTML Page Interesting/* basic-2.3.css */ /* Written by Kynn Bartlett <kynn@kynn.com> */ body { font-family: Arial;
color: navy;
background-color: white; } h1, h2, h3, h4, h5, h6 { font-family: Verdana, sans-serif; } h1 { color: maroon; }
h2 { color: red; } h3 { color: green; }
font-size: smaller; }
a { color: fuchsia; }
F IGURE 2.5
A few simple CSS rules spice
up the appearance
of the page.
Trang 6Viewing Your Style Sheet
Once you’ve created a style sheet, you’ll want to take a look at it to ensure that it works
Uneven browser support for CSS means that it’s important to check how it appears invarious browsers, as well as to make sure you got the syntax correct
To view the style sheet, simply view the HTML file that links to your CSS file Don’t tryviewing the CSS file directly; it will just look like source code in many browsers Theway to know if it worked is to look at the HTML page that’s being styled
Recommended Browsers
You’ll want to verify your style sheet in at least the major browsers because they sent the greatest number of users who may access your page You’ll also want to test inbrowsers that have good support for the CSS standard Browsers can vary between oper-ating systems; Internet Explorer on Microsoft Windows handles CSS quite differentlyfrom Internet Explorer on a Macintosh
repre-Naturally, it’s difficult for one person to have access to every different browser combinationavailable, but the more you’re able to use, the better your results will be I recommend astandard testing suite consisting of four browsers:
• Internet Explorer (5.0, 5.5, or 6.0 on Windows; 5.0 or 5.1 on Macintosh)
• Netscape (4.7 or higher; Windows, Macintosh, or Linux)
• Mozilla (0.9 or higher; Windows, Macintosh, or Linux) or Opera (5.0 or 6.0;
Windows, Macintosh, or Linux)
• Lynx (2.7 or higher; Windows, Macintosh, or Linux)These browsers represent a good cross-section for testing, and are generally widely avail-able on most popular operating systems In Hour 3 and Hour 18, “Web Design withCSS,” you’ll learn more about testing strategies
Summary
In this hour, you learned about using text editors and specialized software to create andedit style sheets, which are just ordinary text files of CSS rules You learned the generalstructure of a CSS rule and its component parts, including the selector, the declaration,the property name, and the property value You learned how and why to include com-ments in your CSS files You got to see a few simple styles change an HTML page, set-ting the text color, size, and font, and you learned how the HTML <link>tag associates
a style sheet with a Web page Finally, you learned how to display your page in yourbrowser and see your CSS in action
2
Trang 7Q I’m not sure what the “RGB” values used for colors are Can you explain?
A Sure! RGB triples are one of the most common ways to specify color on the Web,
in both HTML and CSS RGB stands for Red-Green-Blue and is a standard wayfor specifying a color as a composite of three values: the amount of red, theamount of green, and the amount of blue In HTML and CSS these are written inhexadecimal numbers (base 16), which start with 0, go up to 9, and then continue
on to A, B, C, D, E, and F If you don’t know how to use RGB hexadecimal values,you can use the rgb()function to specify colors, like this:
h1 { color: rgb(100%, 50%, 25%); }
Q Can I set the font-size to a specific value, such as 12 point?
A Yes, you can; 12 point is written as 12pt(no space) This is what’s known as anabsolute font size, though, and it can cause problems for users who need to adjusttheir preferences to account for visual impairments For now I recommend stickingwith the relative values given earlier in this hour, like largerandx-small, but ifyou want you can read ahead to Hour 8 for more font size units
Workshop
The workshop contains quiz questions and activities to help reinforce what you’velearned in this hour If you get stuck, the answers to the quiz can be found after thequestions
Quiz
1 What kind of software is needed to create a CSS file?
2 What is the name of the part of a CSS rule that goes within the curly braces?(a.) The selector
(b.) The declaration(c.) The property name(d.) The property value
3 You want to make all of your HTML headings (<h1>, and so on) blue and in Arialfont What CSS rule(s) do you write?
Trang 81 Because CSS files are just ordinary text files, anything that can create or edit textfiles can make a style sheet This includes text editors, style sheet editors, Webdevelopment tools, and word processors The important thing is to save the files asplain text, usually with a cssfile extension suffix
2 The declaration, which consists of the one or more pairs of property names andvalues, is the part of the CSS rule between curly braces
3 Here’s the easiest way to make headings blue and Arial:
h1, h2, h3, h4, h5, h6 {
color: blue;
font-family: Arial;
}You could also write this as several rules—as many as 12—but this combined form
is the easiest way to do it
Activity: Create Your First Style Sheet
Learning by doing is the key to understanding Cascading Style Sheets, and building yourown style sheet is the first step in the process Follow these instructions to create and testyour own CSS:
1 Select an HTML page to style This could be one you’ve created before, a brandnew one, or perhaps the basic-2.2.htmlfile used earlier this hour
2 Create a new CSS file using the text editor of your choice Using the style ties you learned this hour, add style rules to apply to your HTML page Change thecolor of the text, the background color, the font sizes, and the text font Save thisfile with a cssextension
proper-3 Use the <link>tag in your HTML to associate the style sheet with the HTMLpage Be sure the HTML and CSS files are in the same directory, or else thebrowser might not be able to find the CSS file (You can use full URL paths if youwant, but for now, it’s easiest to have HTML and CSS in the same location.)
4 Open your page in your primary Web browser and view the results of your work
You may want to go back and tweak the CSS to see what effect additional styleshave; go right ahead!
5 If you have any of the other recommended browsers, try the page with those Youprobably won’t see much difference because the CSS properties introduced are rel-atively safe and reasonably well supported
2
Trang 10H OUR 3
Browser Support for CSS
To be able to master the full power of Cascading Style Sheets, you need tounderstand the biggest issue related to using CSS—browser support Noother Web-related technology has been more limited by poor browserimplementation than Cascading Style Sheets However, the situation con-tinues to improve, as recent browsers are getting closer and closer to fullsupport for CSS
In this hour, you’ll learn
• What the browser problem is and why it’s a problem
• The general categories of browsers and how each type affects yourCSS Web designs
• The essential need for workarounds and how to measure the cost offailure
• How the current browsers use Cascading Style Sheets
• How to read the Browser Support Report Card found in each quent hour of this book
Trang 11subse-The Browser Problem
A Web browser is the essential Internet access tool of the early twenty-first century.Browsers are becoming indispensable to business, education, and personal communication.They create a common platform upon which Web-based applications can be built, with anHTML framework driving e-commerce, business-to-business transactions, Web-basedlearning, and online communities Hundreds of thousands of pages of new information areadded to the Web each day Cascading Style Sheets play a crucial role in this adolescentcommunications medium not only by providing a pleasant visual layer on the surface ofthese Web applications, but also by potentially reshaping the entire user experience
So what’s the problem? In short: Web browsers are terrible at CSS
There are a variety of reasons for this Some browsers, such as Netscape 3, were ated before the CSS specification was published Other browsers are limited in whatthey’re meant to do: Lynx is a text-only browser and doesn’t do CSS at all, whereasWebTV terminals understand only a subset of CSS Some browsers jumped the gun;Microsoft is notorious for jumping the gun and using draft specifications of standards
cre-in their browsers And sadly, some browsers are just placre-in bad They may seem tofunction normally, but when it comes to consistent and standardized support for CSS,they fall very short
The good news is that the problem is being solved Slowly but surely, each new majorbrowser release is better than the last, and you can get pretty decent, though not perfect,CSS implementations from Mozilla, Netscape 6, Opera, and certain versions of InternetExplorer
How Browsers Deal with CSS
When a browser encounters anything—from CSS rules to HTML, JavaScript to Flash multimedia—it has three choices as to what it can do If the browser has been programmed
to understand the thing it has encountered, it will attempt to display it according to thespecification If it has no idea what it has come across, it can ignore it Both of theseoptions can be considered “doing the right thing.” Or, the browser can do the wrong thing
It can get confused; it can display in some nonstandard way; it can crash This third option
is the least desirable and is the primary root of our problem
Cascading Style Sheets were designed from the start to degrade gracefully This meansthat if your CSS rules aren’t recognized for some reason, your page will still be usableand the content accessible Because we’ve separated presentation from content, our con-tent should be able to stand on its own, albeit not as beautifully, once our presentation isremoved At least, that’s the theory
Trang 12In practice it’s not nearly as easy as that To be an effective CSS author, you’ll need toknow not only what works in any given browser—or in most or all of them—but alsowhat happens when it doesn’t work Is it as simple as your style not being applied cor-rectly and you losing a bit of decoration, or is it as serious as your entire layout beingdisrupted and content being lost?
To understand how browsers deal with CSS, I’ve divided them up into four categories:
older browsers, which pre-date the CSS specification and thus ignore it completely; ited browsers, which don’t even attempt to support all of CSS; broken browsers, which try
lim-to provide CSS functionality but fail horribly in some manner; and compliant browsers, ofwhich there are sadly few to none Each category of browsers will treat Cascading StyleSheets differently, and it’s important to understand what those differences are
Older Browsers
Older browsers are those that existed before Cascading Style Sheets were even a glimmer
in the W3C’s collective eye Netscape 3 is the classic example of an older browser, and itdoes exactly what it’s supposed to do: it ignores CSS entirely If you try to visit a Webpage styled with CSS, Netscape 3 won’t notice a single rule you’ve written The stylesheet won’t even load
This is actually ideal behavior for older browsers; with CSS designed for backwardscompatibility, most CSS-based Web sites should still work, although they may be some-what boring in appearance Because Netscape 3 is ignoring all CSS rules, we knowexactly what it will do with them; there’s no guesswork necessary on the part of theauthor You won’t have to do anything special to support these types of browsers, exceptfor testing your designs to see if they still function without CSS
3
You can simulate an older browser by configuring a newer browser to erately ignore CSS in the preferences settings for each browser By doing so, you can check to see if your designs work in browsers that don’t understand CSS; a properly designed style sheet should be perfectly understandable in
delib-an delib-ancient browser, such as Netscape 3.
Limited Browsers
Limited browsers are those that are not intended to be full-fledged general-use multimediaWeb browsers; instead, they serve a very specific function and thus don’t have a need forall the capabilities found in CSS
A limited browser is troubling because it supports only a subset of Cascading StyleSheets—and not one that’s broken cleanly along the lines of the CSS Level 1 and CSS
Trang 13Level 2 specifications Microsoft’s WebTV is an example of this type of browser; itsupports only a small number of CSS properties, and not all of them Another example
is EmacSpeak, a screenreader for the visually impaired that supports aural CSS but notmost visual formatting properties
Supporting these browsers can be difficult, but they tend to be uncommon in practice, andusually the subsets of CSS they support are intelligently chosen, such as how EmacSpeakdoesn’t support visual properties but has a good reason for not doing so Testing yourdesign in an older browser (or one with CSS purposely disabled) is usually enough tocover limited browsers, although if you’re designing specifically for audiences using thesetypes of browsers, you may want to have a copy for your own testing purposes
Broken Browsers
The worst kind of browser is one that is simply broken when it comes to CSS, despitewhatever claims the provider makes to standards compliance A broken browser is onethat, when given perfectly legitimate Cascading Style Sheets rules, doesn’t present a Websurfer with anything she can use, but instead displays a mishmash of styles where infor-mation gets lost The difference between an older browser and a broken browser is thatolder browsers don’t try to display CSS, and broken browsers try and fail horribly.Internet Explorer 3 was the first browser to implement any CSS, but it did an overall badjob at it, based in part on the fact that they coded to a specification that was still beingwritten at the time When the final version of CSS Level 1 came out, it was quite differ-ent from Internet Explorer 3’s attempt to implement CSS support
Fortunately, Internet Explorer 3 has almost passed into memory, replaced by newer sions of Internet Explorer that are closer to the CSS specification, meaning that the buggyCSS implementation in Internet Explorer 3 really isn’t a factor in current CSS usage.The current front-runner in broken browsers—causing the most headaches for CSSdevelopers around the world—is Netscape 4 Unlike Netscape 3, Netscape 4 does indeedattempt to support Cascading Style Sheets but fails miserably in many ways For exam-ple, Netscape 4 doesn’t understand many of the key CSS properties needed to lay out apage, set font styles, or align text
ver-To account for the broken browsers out there, it’s necessary to understand how they’rebroken and what happens when you give each browser some CSS rules that it doesn’tunderstand In some cases, the broken browser will just ignore your CSS, as is the casewith a limited or older browser; in others, it may do something horribly wrong In thisbook we’ll point out those problems and help you design CSS that will work on as wide
a selection of browsers as possible
Trang 14Compliant Browsers
Working with a completely CSS-compliant browser is a joy—or it would be, if such acreature existed At the moment there are no browsers that completely support all of theCascading Style Sheets Level 2 specification, and only a handful that can legitimatelyclaim full CSS Level One support
Luckily, there’s plenty of motion in the direction of full support, which means things areonly getting better with each released browser version Browsers that are very close tobeing compliant with the standard include—starting with the most compliant—Mozilla,Netscape 6, Opera 5 and 6, and recent versions of Internet Explorer, especially forMacintosh
Coding CSS for a compliant browser is simply a matter of following the standard andreaping the benefit of your work Unfortunately, this idyllic vision is still not yet a real-ity, as near-compliant browsers constitute only a small fraction of the browsers in use
For the foreseeable future, you’ll need to keep in mind the needs of users without fullyCSS-compliant browsers, and that means using workarounds when necessary
The Importance of Workarounds
Because there are so many broken browsers out there, it’s often necessary to use a
work-around to effect the same functionality you would get on a compliant browser A
workaround is a hack—a nonstandard way of getting a certain result that bends and
tweaks the syntax of CSS or HTML in order to produce the type of style effects you’retrying to achieve
A good workaround is one that stays within the published standards—CSS and HTMLprimarily—so that it doesn’t break on browsers that are compliant with the standards Apartial workaround is one that gives a similar effect but doesn’t fully measure up to thekind of styling you could do if the browser were standards-compliant
Workarounds in This Book
Whenever possible, I’ve identified useful workarounds to compensate for browser limitations These are formatted like this, as a tip, with the titles of the affected browsers in the heading of the tip.
Trang 15The Cost of Failure
The cost of failure is simply an understanding of what will happen if you use specific
CSS rules or properties that aren’t understood by the browser
In some cases, you’ll want to use CSS properties that aren’t well supported; you may ure that the cost of failure is low enough that you don’t mind some users missing out on
fig-a specifig-al styling if it improves the site for those users with more fig-advfig-anced browsers Inother cases, you may decide you can’t take that chance, and you’ll have to make a choicewhether to support the broken browsers with workarounds or ignore that audience.For example, consider a CSS rule that makes the first letter of each section stand outlarge in a stylized font This may just be simple decoration, and if the font is normalsized in some browsers, so be it; it may not affect at all the way your page functions
Browser Compatibility Charts
A browser compatibility chart is an invaluable resource for anyone doing serious CSS
work What is it? A compatibility chart lists every CSS property in a matrix, referenced with a number of different browsers (including various version numbers andplatforms) For example, if you want to know if the Netscape 4 browser supports thecolorproperty, you can consult a compatibility chart For each property you look up,you’ll see whether or not it’s supported by the browser, and if there are any specialnotes or known bugs in the implementation
cross-The best-known CSS browser compatibility chart is maintained by Eric Meyer as part
of the WebReview site and is located at http://www.webreview.com/style/; I highlyrecommend bookmarking that site and referring to it as you test your CSS-baseddesigns Another good browser compatibility chart is from WestCiv, the makers of theStyle Master CSS editor; their charts are at http://www.westciv.com/style_master/academy/browser_support.
In this book, I take a complementary approach to reporting compatibility; instead of ratingthe browsers, I give each CSS feature or property a grade at the end of each hour Thisgrade reflects not only the browser support but also the cost of failure in nonsupportingbrowsers This will let you make an informed choice when creating your cross-browserCSS, and avoid those properties or features that are not safe yet for general use
Web Standards and You
As you know, CSS is defined by the Cascading Style Sheets Level 1 and Level 2 mendations from the World Wide Web Consortium These recommendations function asstandards for the CSS language
Trang 16recom-Standards are a good thing for developers; the more the browsers support the standards,the easier it is for us to create expressive and attractive designs in CSS and know they’llwork reliably Increased support from standards, the browser makers, the Web developercommunity, and the Web software manufacturers will only make our jobs easier.
One group of Web designers decided to take their support for standards public andfounded the Web Standards Project to encourage browser makers to adhere closely tothe CSS recommendations and other Web standards In addition to their advocacywork, the Web Standards Project site contains useful FAQs and links on standards sup-port Their URL is http://www.webstandards.org/
CSS Support in Current Browsers
The rest of this hour represents a snapshot of the browser world as of the first half of 2002
Newer versions of these browsers may be out by the time you read this and could offer evengreater support for the CSS standards, so be sure to check the Web sites for the latest versions
For the major browser types I’ve provided screen shots of the browsers in action, playing a page with some high-powered CSS—part of the css/edge, a CSS site by EricMeyer that pushes the boundaries of what you can do with standards-compliant CSS
dis-The URL for each of these examples is the css/edge spiral, fromhttp://www.meyerweb.com/
eric/css/edge/complexspiral/demo.html Figure 3.1 illustrates how the spiral is supposed
to appear, as shown by Netscape 6
3
F IGURE 3.1
The css/edge spiral demo as it should look (Netscape 6).
Trang 17Internet Explorer
Microsoft’s Internet Explorer has been declared by many to be the winner of the 1990sbrowser wars Internet Explorer 3 had the first support for Cascading Style Sheets, butunfortunately it was quite disastrous and unusable Subsequent versions have improved a lot.Internet Explorer is available on two primary platforms—Windows and Macintosh (A
“pocket” version exists for Pocket PCs running Windows CE.) An important point tokeep in mind is that the Windows and Macintosh versions of Internet Explorer are effec-tively completely different browsers They share some common functionality, but thecore code for each is different, and they have vastly divergent support for CascadingStyle Sheets and other Web standards
IE 5, 5.5, and 6 for Windows
CSS support in Internet Explorer 5 for Windows is what one would call “almost ant and just somewhat broken,” and each subsequent version gets one step better InternetExplorer 6 implements a standards compatibility mode that pretty much moves it into thecategory of compliant browsers
compli-You can download a copy of Internet Explorer for Windows from the Microsoft Web site at http://www.microsoft.com/windows/ie/default.asp.
The css/edge spiral as displayed by Internet Explorer 6 for Windows is shown in Figure 3.2
F IGURE 3.2
Internet Explorer 6 (Windows) displays the css/edge spiral.
Trang 18IE 5 and 5.1 for Macintosh
As mentioned before, Internet Explorer for Macintosh should be considered a completelydifferent species of browser than its Windows cousin Internet Explorer 5 for Mac, at thetime it was first released, was the most standards-compliant browser available and wasfar ahead of the Windows counterpart Version 5.1 continued this strong support for CSSand other standards
Older Versions of Internet Explorer
Internet Explorer 3 and 4—on either platform—have had serious problems with CSS andfall into the category of broken browsers Users with these older versions should beencouraged to upgrade or to possibly just disable CSS
Trang 19Like the brand name Internet Explorer, the Netscape brand name also applies to twovastly different browsers with the same name Netscape 4 is the earlier version and isquite buggy, especially when it comes to browser support, whereas Netscape 6 is quitepossibly one of the most CSS-compliant browsers available
Netscape 6 and Mozilla
It’s important to realize where Netscape 6 came from In the middle of the fierce browsercompetition of the late 1990s, Netscape proposed a daring plan The core browser enginecode was made publicly available as part of an open source project—one in which any-one is welcome to volunteer and contribute programming code to the collective, publiccode base This was known as the Mozilla project
Admittedly, the results have been slow in coming—Netscape even had to skip browserversion 5 entirely to maintain the illusion of keeping up—but there have also beenimpressive results Netscape 6, based on the Mozilla project’s work, is a browser that isvery good at Cascading Style Sheets as well as one that offers excellent support forHTML standards
Mozilla is available on a multitude of systems, including Windows, Macintosh, Linux,and others As it is a work in progress, there are daily developer builds available for test-ing as well as regular milestone releases
You can download the most recent version of Mozilla from http://www.mozilla.org/.
Netscape 6.2.1 is the most current version of Netscape 6 as this book is being written.You’ve already seen an example of Netscape 6 displaying the css/edge spiral in Figure 3.1
The URL for downloading Netscape is http://home.netscape.com/
computing/download/.
Netscape 4
Netscape 4.79 is the most recent version of Netscape 4, but as noted before, Netscape 4has very poor support for Web standards, including CSS However, as a CSS developeryou’ll probably want to have a version of Netscape 4 available for testing
Trang 20Figure 3.4 shows Netscape 4’s attempts to display the css/edge spiral.
Older Versions of Netscape
Some older versions of Netscape 4 were even worse at CSS; for example, version 4.02would routinely crash if you tried to apply certain styles to a table cell Netscape 3 isuseful for testing, however, as it is an excellent example of an older browser that com-pletely ignores CSS
Older versions of Netscape can be found at http://home.netscape.com/
download/archive.html.
Opera
Opera is the perpetual third-runner of browsers; fast and small and standards-compliant, itstill doesn’t enjoy the same popularity as the big two browser names The Chief Technology
Trang 21Officer at Opera, Håkon Wium Lie, was one of the principal authors of the CSS Level 1 andLevel 2 recommendations, so you know they know their stuff! Since version 3, Opera hasconsistently had great CSS support, improving incrementally with each release.
Opera 6
Opera 6 is the current version available for Windows, and I highly recommend getting acopy if you’re a Windows user In addition to the CSS support, it also features one-clickbuttons to turn off and on CSS rendering, user style sheets, and more, which combine tomake this an excellent testing tool
You can download Opera 6 from http://www.opera.com/download/win.html.
The css/edge spiral is shown in Figure 3.5 on Opera 6
F IGURE 3.5
Opera 6 is up to the task of displaying the css/edge spiral.
Opera 5
Opera 5 is the most recent version for Macintosh, Linux, and other platforms UnlikeInternet Explorer, Opera is consistent across various platforms and functions much thesame no matter what it’s running on, especially when it comes to rendering CSS
Trang 22iCab is a Macintosh Web browser made by a company in Germany; you can run iCab inGerman or in English iCab has limited CSS support, but they do take standards seri-ously; the iCab browser displays a sad face when it reaches a page with invalid HTMLand a happy face when the page conforms to the HTML standards Figure 3.6 showsiCab’s attempt to display the css/edge spiral
The iCab Web site is http://www.icab.de/.
F IGURE 3.6
iCab makes an attempt to display the css/edge spiral.
Trang 23The set-top WebTV boxes were an early attempt to make Internet appliances—devicesthat make Web access as easy as using your microwave They’re interesting to us as CSSdevelopers because they supported a limited subset of CSS, mainly for simplicity’s sake,but also because some properties (such as fonts) didn’t make sense based on the type ofbrowser built into a WebTV A WebTV emulator is available for Windows and Macintoshand was used to view the css/edge spiral, as seen in Figure 3.7
You can download the WebTV emulator from http://developer.msntv.com/.
F IGURE 3.7
WebTV has limited CSS support, and so it can’t quite handle the css/edge spiral.
KDE Konqueror
Konqueror is part of the K Desktop Environment, an open source project creating ware for the Linux operating system Konqueror functions as a Web browser (amongother functions) and has generally good support for CSS
soft-You can learn more about Konqueror at http://www.konqueror.org/.
Trang 24The Lynx browser is one of the oldest browsers around; it’s entirely text based Lynxdoesn’t do JavaScript, doesn’t do Java, doesn’t do graphics, doesn’t do sound, doesn’t doFlash, and doesn’t really do tables or frames particularly well (although those latter two
it can deal with okay)
What about CSS? Lynx doesn’t understand CSS at all As such, it’s a perfect example ofthe older browser category discussed earlier in this hour Lynx is a good testing tool forCSS development because it lets you see what your Web design will look like if stylesheets are turned off Lynx is also a good approximation (although not an exact one) forhow people with visual disabilities access the Web using screenreaders
3
F IGURE 3.8
Konqueror takes the css/edge spiral challenge.
Lynx is available for Windows, Mac, Linux, and a number of other operating systems You can download a copy of Lynx from http://lynx.browser.org/.
Trang 25So how does Lynx handle the css/edge spiral? As you can see in Figure 3.9, all of theformatting and images are completely gone, but the page content is still understandableand usable This is how CSS is backwards compatible; older browsers can still accessand use the content even if the styling is lost.
F IGURE 3.9
Lynx doesn’t display the css/edge spiral styles at all.
Summary
Browser support is the key issue to understanding how to use Cascading Style Sheetseffectively Older browsers ignore CSS, compliant browsers support CSS, and otherbrowsers either provide limited or broken support for the standards Knowing how todeal with the different types of browsers makes your style sheets more effective across avariety of platforms and browser versions
Internet Explorer for Windows version 6, Internet Explorer for Macintosh version 5,Netscape 6, Opera for Windows 6, and Opera for Macintosh 5 are the latest availablebrowser versions at the time of writing, and they all have impressive support for CSSstandards that continues to increase with each new release Other browsers, such as iCab,WebTV, Konqueror, and Lynx, offer varying support for the CSS specifications