Presentational markup in HTML 5

06 May 2007

I’ve been contributing to the W3C HTML Working Group working on the next version of HTML. I say contributing, I’ve found it tough enough keeping up with the pure volume of mail the group generates to make much of a contribution so far. Also, a lot of the initial discussions have been around some pretty high-level design principles which I’m leaving to the proper experts for the moment.

One thought-provoking topic that I have been following closely however is the <indent> vs. <blockquote> discussion. It’s not worth going in to the specifics of that conversation here, but you can find that in the archives if you want to follow it. What it has raised in my mind though is the question of using presentational mark-up in HTML.

Most of what I’ve learnt about Web Standards like XHTML and HTML teaches that mark-up is for giving structure and meaning to content, and that CSS is for presenting that content in a web browser or other environment of human consumption. However, history tells us that HTML is not used like that. The <blockquote> example is a good one — it’s regularly used to indent content in the middle of prose whether the content inside the <blockquote> element is really a blockquote at all.

The question is, would it be better for the Semantic Web if, instead of less knowledgeable page authors using <blockquote> incorrectly, an element like <indent> was created which allowed authors to simply indent content with no implied semantics?

I think most people’s reaction to this is: No, use CSS to indent the content. And that was my initial reaction as well. However, following the argument through I think I can see both sides of the argument. Why pollute the web with incorrectly used HTML when we can give authors that want it a semantic-free mechanism for indenting their content?