Question

It is supposed to be backwards compatible with HTML4 and XHTML. John Resig posted about some of the benefits.

As long as we don't use any of the new and not supported yet features, would there be any downside to start building sites with this doctype?

Was it helpful?

Solution

Well consider this:

When serving as text/html, all you need a doctype for is to trigger standards mode. Beyond that, the doctype does nothing as far as browsers are concerned.

When serving as text/html, whether you use XHTML markup or HTML markup, it's treated by browsers as HTML.

So, really it comes down to using the shortest doctype that triggers standards mode (<!DOCTYPE html>) and using HTML markup that produces the correct result in browsers.

The rest is about conforming, validation and markup prerference.

With that said, using <!DOCTYPE html> now and trying to make your markup conform to HTML5 is not a bad idea as long as you stick to stable features that work in browsers now. You wouldn't use anything in HTML4 or XHTML 1.x that doesn't work in browsers, would you?

In other words, you use <!DOCTYPE html> with HTML4-like markup while honoring things that have been clarified in HTML5. HTML5 is about browser compatibility after all.

The downside to using HTML5 now is that the spec can change quite often. This makes it important for you to keep up with the spec as it actively changes. Also http://validator.nu/ might not always be up-to-date, but http://validator.w3.org/ isn't always up-to-date either, so don't let that stop you.

Of course, if you want to use XHTML 1.0 markup and conform to XHTML 1.0, then you shouldn't use <!DOCTYPE html>.

Personally, I always use <!DOCTYPE html> for HTML.

OTHER TIPS

My question to you would be why use it if you don't use any of the new/unsupported features. I'm not saying you couldn't play around with it, but why start building sites with a doctype that offers no benefits and could be supplemented by XHTML5.

I'd say use it and test extensively. Then let us know if it blew your house up or something. :')

Based on the latest IE8 beta, it seems that MS will use the HTML5 doctype as a bypass for the IE8 mode switching quagmire. It seems that the biggest risk with deploying the HTML5 doctype early is that if people publish a lot of IE8-incompatible content with the HTML5 doctype before IE8 ships, MS might get cold feet about making the mode situation simple for HTML5.

Update: This has been voted down, it seems. Quite obviously now that IE8 has shipped, the above consideration no longer applies. And indeed, the situation is not simple with IE8.

The downside for me mainly concerns validation:

  1. Third party validation tools does not always keep up with changing specs, making my favorite tools unreliable.
  2. I prefer to validate against strict doctypes to make sure I have closed all elements. It's an easy way to avoid simple but time consuming nesting errors. With HTML 5 you don't have to close your elements, so there is no way to find unmatched tags.

if you're going to use the doctype, experiment with the features. As long as they don't go into a production site, and you test them thoroughly, have at it.

Consider your audience and your needs. I write pages such as class tests with a target audience of students in my courses who use FireFox 3 in an Ubuntu equipped computer laboratory. I need SVG with MathMl embedded as a foreignObject in the SVG. I use the HTML5 doctype and new HTML5 tags freely.

Take a look at this blog post! Not really a fan of HTML5 http://www.webscienceman.com/2009/01/24/html-xhtml-html5-future-html/

For anyone finding this. The chart at http://hsivonen.iki.fi/doctype/ shows the various rendering modes different browsers use depending on the DOCTYPE declaration in use. It give you a good idea of how DOCTYPE switching works.

Personally I'd say no. There is no clear benefit to HTML5 and in fact would go as far as to say that the whole thing is botched from the start.

Having specialised tags for header, footers and sidebars is a huge mistake - you've got them already in the form of tags (div) and names (classes/id's). Why do we need the specialist ones? XHTML1.1 is good enough, period. In fact, since most browsers don't support HTML4 correctly, there is little point in using a doctype that is going to take years to get proper support.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top