Tuesday, April 04, 2006

I love standards

I like the idea of CSS: keep formatting and positioning outside of the (HT/XHT/X/W)ML object. But damn, why does Microsoft have to dick with the standard just enough to make things a bitch? I (like every other developer on this planet) learns by implementing other people's code and generalizing it to their own situation - sometimes improving upon the original idea. It really (really) sucks when you take a style sheet example and render it in four different browsers getting different results each time because each renders "boxes" differently. IE is supposedly notorious for this. Many CSS authors have IE5 and IE6 "hacks" in their code. I don't want to beat up on IE5 and IE6 because I remember three flavors of Netscape 4 that were just painful to code for. Luckily I wasn't the poor bastard that got stuck "making it look the same" back in those good old days.

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.

No comments: