Interesting article, but you make one point I’m not sure I understand:
“Alternatively, we could use <span>s and classes to mark up all the code. However, this approach is almost as bad as the <font> one. Yes, we’re using CSS instead of embedding presentation inside the structure, but we’re also burying semantic meaning inside our class attribute. “
Burying semantic meaning inside our class attribute? You lost me there. A class attribute is just a name, it might as well be a gid or other code. It doesn’t have to have semantic meaning at all, but what it SHOULD do is tell you what kind of <foo> our <foo> is. Seems to me that that’s the whole point, isn’t it?
I guess what I don’t understand is why it’s a problem, or something to be avoided. <var class=“global”> and <var class=“lexical”> seem to me like useful applications of the class attribute.
Or are you saying you want to be able to set a “type” on a tag without attaching it to a presentation rule in a stylesheet? <var type=“global” class=“wicked-important”>?
(hope the parser escapes the pseudo-tags in this post; if not, I’ll repost without them.)