As I work more and more with CSS I find another thing that annoys me: the CSS artist/zealot. The worst of these people will confine their content to a 400 pixel wide trunk down the center while attempting to override every XHTML tag to force it to do things they weren't supposed to do. Sure they look pretty but when I offer to show the page to the legally blind guy at our office he can't view anything because the fixed positioning and sections that rely upon a fixed font-size (for sizing or flow) make the page completely useless. Why does a horizontal list have to be in an unordered list where the style is changed from a block to inline? These same people get all cranky if you use tables for positioning. True; tables cause extra bandwidth and can't be seen by Google and Yahoo and weren't meant for placement but the HTML table element is the only thing I can guarantee will render adequately every single time on most every browser I can test it in.
CSS1 and CSS2 are good, very good. But, like all new things – there are some few things best done the old fashioned way.