HTML5 is not ready

There's been a lot of talking about the recent announcement of the W3C about the early adoption of HTML5. Though the advice of not sticking too early to HTML5 seems absolutely reasonable, there are some things that need to be cleared. First, W3C's announcement is mainly related to the fact that HTML5 is still a draft. This means that in a not too remote future some changes might be added to the specifications, thus resulting in invalid pages.

Second, HTML5 has been designed to be fully backward-compatible. Although most of HTML5 elements are actually valid HTML 4 elements, there are some brand new elements (and attributes) that browsers are not able to recognize. When a browser encounters an unknown HTML element, it simply treats it as an anonymous element with no default styles and no predefined actions. This is the case, for example, of the abbr element in Internet Explorer 6. Some developers think that the presence of unknown elements makes a browser switch to quirks mode. This is only a rumour.

The real problem, instead, actually involves assistive technologies that parse and render an HTML5 document. For example, a screen reader that stumbles on an article element doesn't know in advance how to handle it. As a result, it's very likely that a screen reader will ignore completely such an element together with all of its contents.

Instead, DOM scripting should work fine, because unknown elements can actually be treated as a subset of the generic HTMLElement interface, though some non-standard features (such as the innerHTML property) should be carefully tested.

To summarize: W3C's experts didn't say "do not use HTML5" but "use it carefully". For example, you should use common HTML 4 elements to make sure that your documents are still backward-compatible. Instead, using an HTML5 DOCTYPE is safe, because not-supporting browsers do not switch to quirks mode when they encounter it. I think we should wait until we can use HTML5 in a more complete way.


One thought on “HTML5 is not ready”

  1. Well... we just kneww it!
    I don't think we needed W3C's advise to be "careful" (with that ax, Eugene...)! :)

    I think that a good developer has to know when IE6 switch to quirksmode (never read and even that an unknown element is threated just like a common HTMLElement.
    More, some of us just added a little hack in his own CSS just to let know non-compliant-browsers how to display unknown elements (i.e. block or inline).
    I think (and maybe I'm too sharp and too niggling) that developers must develop and the others... right, just sit down and stare :)

    I even think that today with "tools" like Joomla, Wordpress and framework like jQuery too much people extemporize programming skills they don't have.

    Sorry to be so hard, but I really think so.

Leave a Reply
