Screenshot of this website on handheld device and version 4.x browsersOn your left are some screenshots of what this website looks like on handheld devices, older version 4.x browsers - and not least important; how Google.com and other search engines reads the content of this website.

Boring, eh? Well, yes - but readable nonetheless. Readable, not only to search engines who loves you when you use logical and structural markup like headers, paragraphs, block quotes etc., but also accessible for those who cannot read or see and thereby rely on screen reading software for their web surfing.
Whenever there is a link on this website, there is a title attribute that explains what the link leads to. Whenever graphics are used to convey information, an alternative attribute is used to explain what those graphics show.

XHTML – parlez vous francais?

Warning: Geek talk ahead.
This website uses XHTML for document structure. XHTML is an abbreviation of Extensible HyperText Markup Language, which, in the words of the World Wide Web Consortium, is "a reformulation of HTML 4 in XML 1.0". This is trivial to some, but incredibly geeky to others, so here is a short explanation of what this means:

The Internet is moving towards being accesible, not only to desktop computers, but also mobile phones, PDA's, refrigerators and who knows else what the future may bring. This progress was foreseen by the World Wide Web Consortium (whose member list count industry giants such as Apple Computers Inc., IBM Corporation, Microsoft Corporation, AOL, Intel Corporation etc.), and a house cleaning of the HTML 4 specifications was called for.
In HTML 4, developers could throw just about anything in a document, and through error and exception handling, browsers would do their best to interpret what the developer was trying to accomplish. And that worked fine as long as these documents were to be read and interpreted by computers with powerful processors and lots of memory.

But on the aforementioned devices, processor power, memory and data storage may be sparse, and therefore these devices do not handle these loose HTML 4 documents very well.
The house cleaning of the HTML 4 specifications, sought interoperability of documents between applications and devices, and separation of document data from style/layout/design. And a more strict rule set for what this wide array of devices is expected to be able to handle. XML ( Extensible Markup Language) was found fit for the job, and gave the basic rules for how future HTML should be written. To ensure backwards compatibility with older devices/browsers, XHTML was written as a combination of HTML and XML. Basically the new rules are:

  • Opened elements must be closed again
  • Elements cannot overlap
  • Attribute values must be quoted

This means way less bandwidth usage, user agent guessing and error/exception handling - and the World Wide Web Consortium recommends that all new HTML is written this way.

So why isn't it?
Good question. The answers are partly that the world is not a perfect place, and neither are the browsers we use — many existing websites already use expensively paid for content management systems, and probably the best answer: old habbits are hard to break. Many web developers still feel that it's so much easier to whip up a few tables, insert a spacer.gif here and there, and you're good to go. Some prominent websites have made the move to XHTML/CSS though, such as Wired Magazine and Lycos Europe, and many more will come.

Another implication of these recommendations, is the progress towards separation of data from layout.

CSS – one document to rule them all

Well - not actually. In fact, the idea with the CSS (Cascading Style Sheets) is to leave the XHTML data document unstyled, and then, depending on what kind of device is asking for the document (screen reader, handheld device, printer, desktop browser, projector etc.), feed an appropriate styling of the document with CSS. The goal for authors and data providers, would be to only maintain a raw (not finished)

Toggle Stylesheets (CSS)