Cascading Style Sheets (CSS) is the styling language developed by the W3C for use in conjunction with a markup language such as HTML or XHTML. Its power is in the fact that the information can be stored in various scopes, and the cumulative effect of all styling rules is computed before rendering the final design in the browser. When used with sufficiently semantic markup, it is a very flexible way to completely style a website, separating the presentational details from the content itself.
While CSS is an incredibly powerful language, it still has a few drawbacks. One of these is the fact that the most widely used web browser, Internet Explorer, renders CSS2 differently than other browsers which follow the W3C standards much more closely. Sometimes the differences are quite subtle, and other times it is a dramatic divergence from the expected behavior. This divergence can lead to some developers going out of their way to serve different versions of content to different browsers, instead of being able to provide a single interoperable document to all devices.
While there is no quantitative test, a person curious about the support of CSS within whatever browser they choose to use can see how well it renders today's styling techniques by loading the Acid2 test on http://webstandards.org
Our Practices
We construct all of our web sites with either HTML or XHTML and CSS. After the site is developed, changes can be easily made to the look of the site, whether on one page or all, with the same amount of effort. Also, by storing the style information outside the HTML document, it allows capable web browsers to cache the information temporarily, saving high-traffic sites a few kilobytes per page load.
