The Future of HTML
6 February 2007
After standing around doing relatively little; resting on their laurels content in the knowledge that finally Microsoft have released a browser with decent (ish) standards support, and most web developers have figured out that HTML and CSS is the way to go, the assorted standards bodies are awakening from their slumber and starting to think about what’s next for HTML.
What’s next is, of course, two competing standards.
One obviously wouldn’t be enough.
However, I can completely see why there are two competing standards – XHTML 2 and HTML 5; neither of them are very good! Both the two standards seem content with adding cruft and useless additions to the current standards, without really addressing any major problems .
XHTML 2, as you can see from the linked article, adds some new elements like nl, take away a few like b and i, messes around with headings and makes every element be a link by adding a href attribute.
HTML 5 adds a whole load of pre-defined elements like “article” and “nav”, which would commonly be created using divs with ids or classes. It also, like XHTML 2, adds some fairly useless new elements like dialog and figure, and for some reason pre-defines some class names such as “copyright”.
What are we gaining, really, by either of these two new specifications? In real terms, neither of these are making new and exciting pages possible, and neither are making page markup significantly more semantic (is “article” much better then “div class=’article’”?) and useful.
My overriding feeling is that right now, we don’t this kind of new markup standard. XHTML 1 and HTML 4 both do a good job of covering the bases and letting you write markup that makes sense for the contents of your document. There are some interesting side aspects to HTML 5 such as Web Forms 2.0 that do useful things for form controls and widgets, but don’t really go far enough – where are things like split-panes, native toolbars and menus?
We have standards currently that work, that can be used successfully to markup the content of a document. What we need to keep working on are the behaviour (javascript) and presentation (CSS) layers – work on them will give us benefits much greater then adding some new elements to HTML.
David Emery Online