content and presentation separation
The myth of content and presentation separation (via simon willison):
1. Non-semantic class name hurt nothing.
...
3. We were never, ever going to redesign our sites without changing the (X)HTML. It’s a nice thought, but it’s also a total pipe dream.
Of course the HTML is going to change in a redesign; any redesign should involve a rethinking of the content as well as the visual design. But using non-semantic class names (ie, span-4
) is like naming variables $string1
. It gives no reference points for scanning the code, it is ten times harder to reuse styles, and it requires unnecessary changes in markup: decent markup should be reusable, in part if not in whole, within any new design.
update: response! I did misunderstand the meaning of a class named span-4
: in the Blueprint CSS framework, the span-4
class denotes an element that spans 4 columns, so it contains visually meaningful information. I maintain that a website redesign automatically includes redesigning the content, and therefore HTML, of a site, so saying that a redesign will require changes to HTML markup is no surprise. Also, that attaching span-2 to HTML elements (or the CMS code that generates those elements) doesn't foster reusability. On the other hand, it's no obstacle to me using Blueprint at some point in the future :)