* Style sheets can be turned on and off by the viewer.
* Nonstandard tags are replaced by style element definitions.
* Most of the complicated presentation markup is removed or hidden within the style sheet, rather than embedded in the document, resulting in cleaner HTML markup.
* One style sheet can be used for multiple HTML documents, making consistency in style over a collection of pages easier to achieve.
* Both authors and readers have the freedom to create new, previously impossible Web layouts.
Before you get too excited, though, we feel compelled to point out that CSS does lack a few items that you may consider important:
* No pixel-level controls. The complexity of programming pixel level layout would violate CSS's design goals to be simple and easy to use.
* No absolute style enforcement. The reader of a page has the option to turn off styles or use a style sheet with higher weights. The author does not have absolute control over the display of his or her creation on another person's system.
* No multiple columns or overlapping frames. You cannot use styles to define overlapping <FRAME>s or to assign the number of columns in a <TABLE> layout. In other words, such definitions must still be hard-coded in the HTML document itself and cannot be tweaked in a style sheet.
* No query language. You cannot figure out what a style looks or acts like just by asking for a definition from some all-knowing style sheet facility the experimental method is the only way to get that information.