xhtml bad boys

the address tag

January 29, 2008
in: html / semantics

When trying to be a modern web designer, you will learn about web standards. You will learn why web standards are necessary and how machines differ from us humans. You will learn about screen readers and people with disabilities browsing the web. You will learn about semantics and syntax. You will learn how to be a good boy building web sites.

swimming against the stream

If you keep on learning and become a prime student, you will have a chance at becoming a standardista. At that moment, you can start preaching standards to other people and continue the legacy of well-coded websites. But let's be honest. Coding to the standards all the time can become a bit ... boring. I'm not surprised that the standardista seem to quench their thirst for rebellion in other areas.

Personally, I think it's not too bad to let go of the standards once in a while, no matter how trivial the example. Remember how html5 was built (amongst others) upon the principal of paving the cow paths? Well, from time to time, try to be that cow, trampling those paths.

the address tag

So where is this all going? Well, the first thing I did when I got into semantics was visit w3schools to check up on the available xhtml tags. One of the tags that caught my attention was the address tag. Something I could most definitely use, or at least, so I thought. It wasn't until a later discussion that I went over to the w3c site to check the actual definition of the tag:

The address element may be used by authors to supply contact information for a document or a major part of a document such as a form. This element often appears at the beginning or end of a document.

w3c site

To be honest, after reading the definition five times, I still wasn't sure what it actually meant. Apparently, the purpose of the address tag is to provide a means of contact for a specific piece of information on the document. Although the definition is actually vague enough to suggest it can be used for any address stated within a document, the example given on the w3c site suggests no such thing. Enter w3schools:

Note: The address tag should NOT be used as describing a postal address, unless it is a part of the contact information.

It seems the address tag is intended for visitors willing to contact the author of the web document. Now I'm sure that it has its uses, but in all the sites I've built so far I haven't come across one single instance where I could make use of the tag as intended. As for actual addresses, I've seen plenty.

so uhm, yeah

Well, no offense meant to the parties involved, but I think the definition stated on the w3c site is utter bollocks. When I see an address tag, I expect it to be used for marking up an actual address, not for general contact information regarding the author of the document. So in this particular case, I happily tried to be one of the cows. Hence the standard code piece I use to mark-up addresses in a web document:

<address> <span class="street">...</span> <span class="city">...</span> <span class="country">...</span> </address>

I do hope it's clear enough that this article is written with a touch of irony, and that it's best to stick to the standards, but at the same time I don't think it's bad to question those same standards and go against them when not too harmful. In the case of the address tag, I think they've made an interesting sounding tag and botched it up with a definition that is incredibly limited and even misleading. Maybe machines can understand it, I as a human sure don't.

Be true to the standards, but try to be a bad boy once in a while. If anything, it's more fun that way. Just don't turn into a second Microsoft.