StyleSheets [aka CSS] So you want your page to be more than just black text on a white background. First off, an important point: What I am about to say will make all your pages have the same eye candy with zero effort on your part - you just edit the one file and it modifies, say, the link color on all of your pages. This will make your life easier, even if you don't care about what browsers it works in. OK. So you want all your pages to have, say, green links and a grey background [now who would want something like that, right?] At the top of each of your pages, you put the following: Where "/style.css" is a file on your website. Currently empty. In that file, you then put all the relevant information. For example, in it's simplest form, the colors I've described above could be done as: BODY { background-color: #eeeeee; } A:link { color: #53a119; } Now, every page that has that has that LINK at the top will have those colors. Some people at this point realise that it'll make their lives simpler, but it'll take a while to convert all their pages to use this scheme. So we're looking for another reason to use them. Some more benefits: Consider the size of all your web pages. Someone visiting your site may have to download an extra 3k or so of stuff that's merely eye-candy. And they have to do it for every page they visit. Again, nowadays some people still don't have connections that're fast enough for that to be insignificant. 3k in and of itself may not be much, but there's always a danger [horror of horrors] that someone may want to look at a second page on your site. No, really. Apparently it happens sometimes. Note that, if your site is big, then you'll probably end up with a bigger-than-3k stylesheet. Yours truly used to work at a large investment bank where the stylesheet was on the order of 25k. That stylesheet takes longer to download than most of my webpages, let alone anything more. If it were explicitly included in every page, the site would be almost unnavigable on a slow connection. *cough* *cough* *gag* If you've used the LINK above, then the browser they're using will have cached the ctyle sheet, so they won't have to reload it. Just think - a saving of 25k on each and every page. One of the really big bonuses of stylesheets is that a browser can actually pick & choose some properties based on how the page is being used. It's possible to explicitly say that one stylesheet is being used for screen, another for presentation on a large screen, and a third for print. Why would you want to do that? Well, some people have black & white printers. Notably small devices attatched to their laptop, but also some people with older machines. You can actually have it arranged so that, say, text that would have been almost invisible on a black&white printer [a light red that would stand out like a sore thumb on a color printer] will be rendered as black proper when it's printed out. Muchos bonus points go to those who're capable of making use of the "aural" abilities of the newer CSS standards, where the completely blind who use a screen reader can actually have your pages salient points brought to their attention more readily. Last note on that: Adverts don't print out well. "Fist the Monkey" adverts are completely and utterly pointless on printouts. So why not just get rid of them in the "printable version"? You don't even need to make a "printable version" link on your website; it can automatically put a more suitable advert [if you really must have adverts] onto the printout. And format it more correctly for the printer. People who can't use them don't download them. If their browser supports turning stylesheets off [opera to the rescue], then they don't download the unecessary information, improving the speed that your website works in their browser. If they're using a browser that doesn't support stylesheets at all [damn those blind people not being able to appreciate your clever-clever-pretty-pretty green links], the browser never downloads it at all. Notes on stupid old browsers Obviously, all you web designers out there consider NS4.x the bain of your web designing existence. And yes, I'm fully aware that stylesheets don't work properly in it a lot of the time [is explicitly broken a lot of the time]. Get over it. Some people still use NS4. So? Well, for a start, look all over the web. There are lots of sites that document the problems with it. Most of the problems are based on things that are pure eye-candy and not functionality. If you really believe you need those things, then you're going to have to provide some manner of graceful fallback when they don't function correctly. And don't forget - while UI feedback such as mouseovers is good, it's not NECESSARY. People using NS4 don't usually expect mouseovers on text to work. They don't usually see it, they learn to deal with it. A graceful fallback for NS4 is to NOT DO ANYTHING AT ALL. Final Thoughts Just think. You don't have to do much work at all, and by using stylesheets properly, your website has just got significantly faster to browse and easier to maintain. All my webpages are written with php includes to add the head & tail. [plus some other stuff for general-purpose compatability]. I actually added one line to one file and my entire site now uses stylesheets. Take from that what you will. Addition from Tom Saddington: There is one very easy way to get NS4 to see/not see certain things: It can't understand the @import directive, so there are two things you can do with this "feature": 1) At the top of the stylesheet, put "@import url(/style2.css);" or similar. Anything that NS4 can safely understand, you put in the main stylesheet [the one that actually gets loaded] and anything that NS4 can't safely understand or behave with, you put into "style2.css" or whatever you choose to name the stylsheet. This doesn't involve any manner of browser detection - it's effectively using stupid broken browsers against themselves. Hence, I approve. 2) Alternatively, have a complete working stylesheet and put the @import at the bottom; in that, you put stuff that you want to override in browsers that do work right. All of which is pretty cool.