The basic purpose of cascading style sheets (CSS) is presentation. In the early days of the internet, with the advent of graphical web browsers designers ran into challenges with the presentation of web pages.
In the early years control was in the hands of the user – visitors to the websites and the different emerging web browsers.
Even today we still run into challenges between Firefox, Safari, Internet Explorer and the many different versions.
Thanks to the World Wide Web Consortium (W3C) a body formed to oversea the technical growth of the internet we have standards today.
(CSS) cascading style sheets is one of the best things in my opinion to come out from this group. Using CSS helps us to generate really clean code and allows our sites to be viewed the way we intended them to look.
One of the big benefits was the ability to eliminate a large portion of the the tables used in the design process. We still keep a few tables around since not all tables are bad.
(CSS) Gives us everything from azimuth to zoom, and knowing how to use it all is a big challenge. Yet, there are many books written on the subject.
One of the few books I keep on my desk and reference often as I work on my websites:
HTML Utopia: Designing Without Tables Using CSS.
The Ultimate Guide Beginners Guide To CSS.