A Preview of HTML 5

by Lachlan Hunt

126 Reader Comments

Back to the Article
  1. I suppose that HTML 5 will appear “a bit” too late. If it appeared now, situation would be different, but even if standard will be ready it will take years when users will use it.

    Copy & paste the code below to embed this comment.
  2. .. look wrong, to me. Why did they choose to make that a standard?

    <video src=“video.ogv” controls poster=“poster.jpg”>..</video>

    The CONTROLS attribute describes nothing. Is it a boolean? Does it “control” something obscure? Simply adding a value would clear up a lot of potential confusion.

    Copy & paste the code below to embed this comment.
  3. M. Hageman (comment 72), the controls attribute is boolean.  It’s exactly like the checked attribute:

    <input type=“checkbox” checked>

    In XHTML, it would be controls=“controls”.  For convenience, controls=”” will work too.

    Copy & paste the code below to embed this comment.
  4. When are they going to include a way to label a list?

    <ul>
    <label>Menu</label>
    <li>Home</li>
    <li>Contact Us</li>
    <li>About</li>
    </ul>

    Copy & paste the code below to embed this comment.
  5. Generally those new elements suppose HTML 5 will make easier to developer/designer, though it wouldn’t much help. (Or i just didn’t realized of its shakes)

    Copy & paste the code below to embed this comment.
  6. @ Stephen (comment 59)

    My statement that, in HTML 5, lower value headings can be used before higher value headings, is correct. Below is an example taken from the spec:

    http://www.w3.org/html/wg/html5/#headings0

    <body>

    <h4>Apples</h4> Apples are fruit. <section>

      <h2>Taste</h2>

      They taste lovely.

      <h6>Sweet</h6>

      Red apples are sweeter than green ones.

      <h1>Color</h1>

      Apples come in various colors.

    </section>

    </body>

    Headings are one of the most important constructs in making Web pages accessible. But virtually nobody is using numbered headings correctly. Changing the semantics of numbered headings in HTML 5 will only serve to confuse people further and will not fix the problem. By contrast, XHTML 2 uses the h element instead of numbered headings, which is a much easier construct for people to understand and use. But the HTML 5 Working Group is reluctant to “borrow” constructs from XHTML 2.

    Copy & paste the code below to embed this comment.
  7. Please fix your commenting system. It’s not clear how to post code examples in comments. The preview does not reflect the actual posted comment.

    Copy & paste the code below to embed this comment.
  8. Hello –
    Interesting article and dicussion.  I am a a college instructor for XHTML.  It’s a sorry shame that the HTML 5 folks can’t get together with the XHTML 2 folks and just combine the best features of both.  Then… let’s call it COOL 2.0.  COOL?  Yeah… because it would then be real Cool for students to learn just ONE language, and ONE standard that worked on ALL browsers.  Fat chance.  Instead, I’ll just tell them “Close your tags—No.  Wait. Maybe you don’t have to.”

    C’mon people.  Doesn’t anyone see the “Tower of Babel” problem here?  God help me, it almost makes me wish for a Dictatorship of web standards.  An article comparing the competing standards, linked to and cited earlier, states:
    “Indeed, the X/HTML 5 spec actually says ‘generally speaking, authors are discouraged from trying to use XML on the Web’, even though W3C continues to herald XML as the future of the Web?”  HUH?  Great, now we can have a new web editor with FIVE WINDOWS:  HTML5, XHTML2, XML, CSS, and BROWSER VIEW.  Wait… we’ll have to have a tab for different browser views for the different standards.

    What the H—- is going on here?  What the H—- should be taught in college so students can excel?

    Yours –
    Scott

    Copy & paste the code below to embed this comment.
  9. Talking about a technology that’s not expected to work until 2017 (or even as late as 2022) is ridiculous. The web moves far too quickly for us to rigidly define a language for use a decade in the future—the best we can do is embrace extensible technologies, so that things can develop naturally.

    The new features HTML 5 are very underwhelming: for example, there’s the possibility for automatic client-side validation of e-mail addresses etc.—but that’s something I’d rather just do now with JavaScript than wait 10 years for some web browsers to do it for me. It’s laughable.

    I’ve read that HTML 5 is supposed to be better for automatic indexing etc.—but if we’re concerned about making the web better for robots, then furthering XML is the way to go. And for developers, XHTML 2.0 is really clever, tight, elegant and intuitive. It’s not as backward compatible as HTML 5… but I’m beginning to think that maybe a ‘new start’ is what the web needs: we’ll see better levels of compliance after browser vendors are forced to start afresh. Anyway, it’s not as if you can’t adopt XHTML 2.0 without also serving old (X)HTML to old browsers until they die out. And, if XHTML 2.0 becomes a W3C recommendation soon (the “XHTML2 Working Group Roadmap”:http://www.w3.org/MarkUp/xhtml-roadmap/ seems hopeful), it’s likely to have been well-supported for years by the time HTML 5 arrives to sort out little issues that only affect decade-old software.

    Copy & paste the code below to embed this comment.
  10. I have to say, I’ve only recently heard about HTML 5. I thought that as of HTML 4.01, HTML itself was no longer going to be developed or standardized, and that XHTML 1.0 and 2.0 were the way forward.

    The biggest drawback for XHTML 2.0 as far as I can see is backward compatibility, but there’s nothing to say that browsers themselves cant process both current HTML/XHTML standards and that of XHTML 2.0. And if XHTML 2.0 solves many of the problems we see in HTML today, but 10 years sooner than HTML 5 will, then why even bother with HTML 5?

    As people have repeatedly said in this discussion, 10 – 15 years is just too long to wait for a new markup language for the web.

    My personal opinion is that the people developing HTML/XHTML in general aren’t thinking outside the box enough. At the moment, websites are primarily text-based, and everyone conforms to the usual standard when designing their sites – ie. most websites are columns-and-rows based layouts, filled with text. Search engines love text, but hate multimedia elements such as Flash and SVG graphics. But when are things going to change? When are we going to move away from the “anything-more-than-text-on-a-site-will-make-it-less-usable-for -someone” attitude?

    I’m not saying that accessibility and usability aren’t important, and I know this is probably a discussion for another time, but it seems pointless to me that the W3C (and others) are working so hard (and for so long) on developing the next great standard markup language for the web, when in the end it just wont deliver what we’ll all want it to 10 – 15 years from now.

    We need a completely new language for the web. Sure, it’d be fine to keep it XML-based (certainly not SGML-based) but if the web is going to evolve at the same pace that it has been, then we’re going to have to find a way of breaking the restrictions that current markup languages have – and in my eyes HTML 5 or XHTML 2.0 just aren’t going to do that.

    Copy & paste the code below to embed this comment.
  11. I like the article oriented semantics of html5, article could be a video, a sound interview or piece of text… which seems good. Maybe there should be a way to denote “Main Article”?
    In this way you have a way to separate one article pages from pages with many of them (like homepages).

    Copy & paste the code below to embed this comment.
  12. Not sure why we need this article when HTML5 is not finished. Who’s to say the elements won’t change again? Yet it’s generating some good discussion here.

    10-15 years is a joke. I assume this is to allow time for Microsoft to implement it. :-) Talking of whom:

    “Until Microsoft proves they can jump ahead of where they’ve been, I will withhold my optimism. They did that once with IE5 on the Mac — before they let it whither, get passed up and officially die. The large, but not giant, step they took forward with IE7 hardly catches up to where WebKit, Gecko and Presto were years ago.“

    Good news. Rumours are rife that IE8 will be based on a new engine such as WebKit.

    “Oh, and one other real benefit for us as authors: the new elements will severely reduce the clutter of all the divs blurring together on our pages.“

    Sadly I doubt this. What will happen is that we’ll end up with the new elements and a bunch of divs surrounding them to ensure backwards compatibility. How else will we render our sites in browsers like IE6? (Either that or serve different code from the server. Sigh.)

    Copy & paste the code below to embed this comment.
  13. I spoke too soon. Looks now like IE8 will be based on the old Trident after all. (Check out this “interview”:http://www.sitepoint.com/article/ie-standards-chris-wilson with Chris Wilson.)

    Copy & paste the code below to embed this comment.
  14. If you’re a designer who wants to make your semantically correct (x)html page just look right, you probably won’t need elements like <header>, <nav> and <article>. But these can surely make your content more usable and accessible for users of non display browsers. As Lachlan Hunt said:

    assistive technology can help the user to more easily navigate the page. For example, they can easily skip over the navigation section or quickly jump from one article to the next without the need for authors to provide skip links

    A specific advantage of the <header> tag would be to me, that I can preserve the use of <h1> for the first heading above my text, instead of displaying the name of the site.

    But I agree with most commentors that the development cycle of html and other web standards is too long. Not sure who to blame though.

    Copy & paste the code below to embed this comment.
  15. I’m sorry. Did I say ‘symantic’? I meant ‘semantic’ of course.

    Copy & paste the code below to embed this comment.
  16. The HTML 5 specification should also include tags that extend the basic structure of documents. Block-level elements such as:
    – <title>
    – <subtitle>
    – <byline>
    – <abstract>
    And an inline element of <author>.
    Or, as suggested by others, rather extend the XHTML specification with a content=“keyword” attribute to convey meaning to the UA.

    Copy & paste the code below to embed this comment.
  17. Thanks for very interesting article. btw. I really enjoyed reading all of your articles. It’s interesting to read ideas, and observations from someone else’s point of view”¦ makes you think more. Keep up the good work. Greetings

    Copy & paste the code below to embed this comment.
  18. So, in summary:
    – there are better ways to implement semantic meaning and metadata by using the structures designed for that: attributes instead of new tags
    – everything in HTML 5 (or XHTML 2, for that matter) is useless, unless MS is on board.
    SGML development is a waste of time, because XML is better (try writing an SGML Parser from scratch, versus an XML parser).
    – The web needs current standards implemented before moving on to newer (and XML-based) solutions.

    Copy & paste the code below to embed this comment.
  19. Where does this leave CSS?

    Copy & paste the code below to embed this comment.
  20. It does sound like a long time. Still, it has been almost ten years and the major browsers still can’t get on board with XHTML and CSS.

    Talk about XHTML, wasn’t that one of the major reasons to have everything closed; to clean up the markup and make it XML friendly all at the same time. Seems like removing half the code now, it’s moving right back to HTML. Which, by the way, was supposed to be completely replaced by XHTML? Perhaps if they want to improve on it they could just figure out how to include an “if” statement.

    Personally I like the closing tags. I can imagine the browsers now, each with its own interpretation of where the closing should be; don’t throw out the hack book yet.

    Copy & paste the code below to embed this comment.
  21. Why do we need HTML 5 when we all ready have XML, with which We can define our own tags? Wouldn’t it be easier to persuade browser vendors to support ‘application/xml’ and then the possibilities will be endless.

    Copy & paste the code below to embed this comment.
  22. Title emphasis are on hypertex and markup.

    It feels like there is just too much confusion on this particular topic. Seems that we have almost forgotten what is a job of HTML thanks to an overwhelming number of other web-techs flying around our heads.

    We shouldn’t discuss the difference between the <header> and <div id=”?header”?>, cause the last one shouldn’t exists on a page at all. Say, you have to build a page which will be viewed in the default form, why on earth would you use a <div> or <span> tag? It tells absolutely nothing to the browser or other software about its content.

    How a parser sees the ideal HTML page?
    <body> – beginning of the content
    <h1> – heading
    <h2> – subheading
    – paragraph
    <q> – quote
    <a> – link

    How a parser sees practical page?
    <body> beginning of the content
    <div id=”?container”?> …a block
    <div id=”?wrapper”?> …a block
    <div id=”?header”?> …a block
    <h1 id=”?logo”?> A Heading!

    So, now… how we can improve the later without introducing new tags? If we say that, new tags are irrelevant, then we should all go back and remove half of the existing tags as well, cause we don’t use them semantically anyway.

    Personally I think that the goal of a HTML 5 shouldn’t be something ground-breaking or that it should reduce designers coding work by half. It just has to make a page little less complicated and a little bit more semantical, that alone would be just great.

    Copy & paste the code below to embed this comment.
  23. What a mess. The people developing HTML 5 clearly don’t care about what a muddle the web is in (or if they do, they’re going the wrong way about fixing it).

    I read somewhere that HTML5 does have one little advantage that other languages can’t provide: it allows you to specify that an input should contain an e-mail address, so browsers with proper support could (1) validate e-mail addresses, and (2) have a form control that allows a user to select an e-mail from their address book. The second benefit is, apparently, not possible without HTML5. But that’s not true, it would be better to do that sort of thing with microformats. I really don’t think that sort of thing should be built into a markup language.

    People who think it’s a good thing to have elements like “footer” and “article” have completely lost the plot – semantics is not about coming up with more and more restrictive tags. I mean, what the hell does an “article” tag actually achieve? It makes absolutely no difference to users. It’s not even very convenient for robots, because it’s part of a shoddy, badly-formed language that’s difficult to parse. If you want to achieve infinite flexibility (not just a few more tags), and you want the web to be more semantic and more understandable by bots (and therefore more interelational) you need to make the world embrace application/xml. And the step on the way to that is XHTML 2.0.

    HTML5 is an ugly, backward mess and I hope to God I never have to code in it. It’s not elegant and not consistent. And it doesn’t help the world adopt XML, it’s just delaying progress. Please, A List Apart, do an article on XHTML 2.0 and show everyone how great it is.

    Oh, and XHTML 2.0 will have XForms. Enough said.

    Copy & paste the code below to embed this comment.
  24. I’m sure there will be very little we can’t do in html5 that we can do now. To escape the limitations of the form tags such as “header” it seems there would be no reason we couldn’t still make custom CSS classes within div tags.

    The time-line is worrisome, however, I think getting this spec into production quickly is important; Otherwise, we may get stuck in a quagmire of proprietary web technologies again. Standards must prevail, or we will be living in web-dev-hell.

    Copy & paste the code below to embed this comment.
  25. I think the biggest advantage of the new standards that are currently in development are the stricter definitions. We’ve learned from the past that many things were interpretable in different ways. Hopefully HTML5 and other future standards will bring a more standardized web, as in every browser will render it the same. With no space for your own interpretation it should be easier to implement it for the browser vendors. Let’s hope the best!

    Copy & paste the code below to embed this comment.
  26. I can see how <header> <nav> <article> make sense to someone who is writing in English.

    If you are writing in another language, wouldn’t something like this be more readable?

    <div id=“Cabecera”>Header in Spanish</div>

    Isn’t the above example more understandable for the someone trying to understand the code if the content is in Spanish?

    Copy & paste the code below to embed this comment.
  27. Thanks for this great post.

    Copy & paste the code below to embed this comment.
  28. I don’t like the new “semantic” tags, because meaning is murky. I think that the proposed “section” tags don’t need to exist, and we can just give semantic meaning to layers of “div” tags, each indicating the beginning of a section. We can rank headings on a page by how many layers in they are.

    Copy & paste the code below to embed this comment.
  29. I’m with Rob Newman on this one; there’s a clear difference between moving forwards and creating new restrictions.
    XHTML created a standard that finally made designers code sites that would look the same in most browser (and IE).
    It even got some of the lazy designers closing tags, which even HTML 4 advocated. Pandering to laziness and encouraging people to start writing pages like a dyslexic donkey, jamming unclosed tags here there and everywhere, is just bloody ridiculous.
    Claiming this is a move towards a more semantic web is just counter-productive. The viewing public couldn’t care less if you coded your website in Pascal as long as it looks nice and does what they expect, and as much as I support the idea of a semantic web, I fail to see how bastardising web-standards rather than working with the development of current standards is going to help create a “better internet”.

    HTML 5 is simply a collective of Luddite trying to claw back the miserable mess that was HTML4 in order to make their lives that little bit easier.

    For me there is only XHTML 2.0 and XForms, roll on the future it’s gonna rock. Thank god the HTML 5 mess will take a decade or so before it sees the light of day, by then it’ll be about as exciting as Fortran.

    Copy & paste the code below to embed this comment.
  30. If you are writing in another language, wouldn’t something like this be more readable?
    <div id=”?Cabecera”?>Header in Spanish</div>

    We’ve never particularly worried about other elements being named in English only. Nobody has said that we should allow <cuerpo> as well as <body>, or that CSS should recognise ‘izquierda’ as meaning ‘left’.

    Copy & paste the code below to embed this comment.
  31. Okay, let’s see if I’ve got this right. Here’s where (X)HTML5 stands today:

    • Current working draft includes the well supported embed element.
    • Since there won’t be any doctype, we can use &lt;!DOCTYPE html&gt; starting today.

    This allows for a simple cross-browser way to embed Flash movies today using valid (X)HTML5 markup according to specification!

    Although embed doesn’t support fallback, I very much prefer it’s simplicity over “using the object element”:http://www.alistapart.com/articles/byebyeembed

    Copy & paste the code below to embed this comment.
  32. I don’t understand why we need a new SGML-based language. I can (on a good day) understand why we need two branches of the language (one for smart, hand-coding humans, and one for machines to regurgitate), but I don’t understand why the second one has been designed to keep our web browsers so bulky, by not caring about syntax. Any machine can easily comprehend XML syntax, and spit that out instead of SGML.

    XML leads to cell phones being able to use the whole web, and much faster web browsers. We wee told that XML is the way of the future, and now the W3C stabs all the standardista-minor in the back with a new SGML-based language: not cool.

    Copy & paste the code below to embed this comment.
  33. My first browse here!

    Copy & paste the code below to embed this comment.
  34. So HTML5 will introduce a load of new semantic tags. But what exactly will they achieve? To the end user whether a tag is <header> or <div class=“header”> is irrelevant. It will look the same. To the browser I imagine it makes no difference either. I imagine a header tag will be rendered just like a div tag, depending on the default CSS a browser applies to it. It might help with some accessibility issues and might also help with interoperability between automated systems I guess.

    The latter is anyway solved by XML and the former is only the case if the tags are used properly. But then that’s the problem with HTML in the first place. It is not being used as intended and when HTML5 finally sees the light of day, it too won’t be used as intended. Having one nav tag is great, but what we will end up seeing is 5 or 6 of them because they achieve a certain layout effect. How is a blind user then going to be able to tell which is the “main” nav tag.

    Really what we need is a way of applying semantics to tags in the same way that CSS applies styling to them.

    I really wish all the effort that has gone into HTML5 had actually been put to better use in creating a common rendering engine or at least a standardised way of rendering CSS instructions. I just don’t see how HTML5 is solving the problems of HTML4. The problems with current web design are actually with the support for CSS, not HTML.

    Copy & paste the code below to embed this comment.
  35. Work on HTML 5, which commenced in 2004, is currently being carried out in a joint effort between the W3C HTML WG and the WHATWG. Many key players are participating in the W3C effort including representatives from the four major browser vendors: Apple, Mozilla, Opera, and Microsoft; and a range of other organisations and individuals with many diverse interests and expertise.

    Firstoff, is the WHATWG the driving force, primarily, behind HTML5? And Microsoft is not a part of WHATWG (the listed reason is that they cannot agree that the final spec should not require software patents to implement — a weird reason, whether true or not. It leaves us to assume they simply want no part any any true interoperability). 

    To this commenter, it seems the author is going out of the way to try to include Microsoft in this effort, whereas they decided not to show up to the party.

    Copy & paste the code below to embed this comment.
  36. Robin’s comments above really hit the nail on the head for me.  I’ve coded professionally for a few long years now, and rather than refining the rules of the Game, HTML 5 seems to be a drawn out debate on what the Team should call itself.  <header> or <div class=“header”>?  How about the “Fighting Mongooses”, that’s a good team name.

    Snarkiness aside, I’m curious to see just how far this goes.

    Copy & paste the code below to embed this comment.
  37. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus eu nisi tempus nibh sagittis nonummy. Suspendisse aliquam neque quis dolor accumsan blandit. Ut in libero vitae arcu sagittis convallis. Donec sed quam at tortor interdum gravida. Vivamus consequat nulla at turpis. Nunc hendrerit interdum tellus. Maecenas interdum. Sed commodo, ligula in imperdiet tristique, orci mauris commodo diam, rhoncus laoreet nisl magna sed arcu. Fusce hendrerit, lacus nec adipiscing lobortis, ligula elit suscipit massa, eu euismod nisi leo vel justo. Curabitur mattis diam ut ipsum. Sed tincidunt, quam non mollis venenatis, est nisi ultrices nunc, id rhoncus sapien justo id pede. Fusce augue tortor, dapibus ut, euismod eu, posuere nec, erat. Phasellus velit. Nulla diam velit, posuere vel, euismod molestie, fringilla et, nunc.

    Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Etiam eu dui at turpis aliquam pulvinar. Maecenas eget risus. Maecenas enim. Nulla vulputate sem a felis. Fusce lacinia euismod enim. Mauris leo. Maecenas tempus, augue eu tempus gravida, metus sem consequat ipsum, eget adipiscing enim pede vel mauris. Fusce faucibus, odio id bibendum placerat, ipsum diam eleifend nisl, ut sagittis lacus enim vel turpis. Vestibulum tristique nulla a leo. Proin sollicitudin. In ligula mauris, blandit id, fermentum quis, gravida nec, est.

    Aenean posuere risus. Integer quis ligula. Mauris dignissim auctor eros. Phasellus placerat. Quisque euismod. Morbi pellentesque. Nullam quis orci. Ut vulputate lacinia eros. Donec leo lacus, elementum eu, vulputate vel, rhoncus vitae, felis. Sed et lacus. Nullam et sem.

    Curabitur in arcu quis urna sagittis rutrum. Mauris rutrum nisl vel arcu. Maecenas mauris enim, tempus posuere, pulvinar eu, ullamcorper in, odio. Suspendisse dolor. Morbi libero mauris, ullamcorper id, fringilla laoreet, sodales at, odio. Etiam metus. Cras lacinia risus id pede. Phasellus elementum ornare lectus. Sed vitae diam. Nunc eu quam. Phasellus ipsum tellus, imperdiet nec, ullamcorper et, egestas vitae, purus. Proin mattis, lectus sit amet dignissim tempus, nunc nibh laoreet erat, in tempor erat quam at ligula. Aenean fringilla cursus sem. Aliquam erat volutpat. Curabitur luctus placerat sem. Integer consectetuer sodales lectus.

    Sed vulputate nisi at neque congue facilisis. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Mauris ac erat. Donec elit. Duis urna pede, congue sed, volutpat id, lobortis in, mauris. Ut mollis ante ut neque. Duis viverra libero at justo. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin quam. Nullam nulla. Aliquam at nulla. Donec tristique imperdiet erat. Sed mollis pretium metus. In faucibus aliquet sem. Sed viverra tristique leo. Praesent ut nisi. Donec ac ligula eu nibh placerat ultricies.
    Generated 5 paragraphs, 429 words, 2895 bytes of Lorem Ipsum

    Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus eu nisi tempus nibh sagittis nonummy. Suspendisse aliquam neque quis dolor accumsan blandit. Ut in libero vitae arcu sagittis convallis. Donec sed quam at tortor interdum gravida. Vivamus consequat nulla at turpis. Nunc hendrerit interdum tellus. Maecenas interdum. Sed commodo, ligula in imperdiet tristique, orci mauris commodo diam, rhoncus laoreet nisl magna sed arcu. Fusce hendrerit, lacus nec adipiscing lobortis, ligula elit suscipit massa, eu euismod nisi leo vel justo. Curabitur mattis diam ut ipsum. Sed tincidunt, quam non mollis venenatis, est nisi ultrices nunc, id rhoncus sapien justo id pede. Fusce augue tortor, dapibus ut, euismod eu, posuere nec, erat. Phasellus velit. Nulla diam velit, posuere vel, euismod molestie, fringilla et, nunc.

    Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Etiam eu dui at turpis aliquam pulvinar. Maecenas eget risus. Maecenas enim. Nulla vulputate sem a felis. Fusce lacinia euismod enim. Mauris leo. Maecenas tempus, augue eu tempus gravida, metus sem consequat ipsum, eget adipiscing enim pede vel mauris. Fusce faucibus, odio id bibendum placerat, ipsum diam eleifend nisl, ut sagittis lacus enim vel turpis. Vestibulum tristique nulla a leo. Proin sollicitudin. In ligula mauris, blandit id, fermentum quis, gravida nec, est.

    Aenean posuere risus. Integer quis ligula. Mauris dignissim auctor eros. Phasellus placerat. Quisque euismod. Morbi pellentesque. Nullam quis orci. Ut vulputate lacinia eros. Donec leo lacus, elementum eu, vulputate vel, rhoncus vitae, felis. Sed et lacus. Nullam et sem.

    Curabitur in arcu quis urna sagittis rutrum. Mauris rutrum nisl vel arcu. Maecenas mauris enim, tempus posuere, pulvinar eu, ullamcorper in, odio. Suspendisse dolor. Morbi libero mauris, ullamcorper id, fringilla laoreet, sodales at, odio. Etiam metus. Cras lacinia risus id pede. Phasellus elementum ornare lectus. Sed vitae diam. Nunc eu quam. Phasellus ipsum tellus, imperdiet nec, ullamcorper et, egestas vitae, purus. Proin mattis, lectus sit amet dignissim tempus, nunc nibh laoreet erat, in tempor erat quam at ligula. Aenean fringilla cursus sem. Aliquam erat volutpat. Curabitur luctus placerat sem. Integer consectetuer sodales lectus.

    Sed vulputate nisi at neque congue facilisis. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Mauris ac erat. Donec elit. Duis urna pede, congue sed, volutpat id, lobortis in, mauris. Ut mollis ante ut neque. Duis viverra libero at justo. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin quam. Nullam nulla. Aliquam at nulla. Donec tristique imperdiet erat. Sed mollis pretium metus. In faucibus aliquet sem. Sed viverra tristique leo. Praesent ut nisi. Donec ac ligula eu nibh placerat ultricies.
    Generated 5 paragraphs, 429 words, 2895 bytes of Lorem Ipsum

    Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus eu nisi tempus nibh sagittis nonummy. Suspendisse aliquam neque quis dolor accumsan blandit. Ut in libero vitae arcu sagittis convallis. Donec sed quam at tortor interdum gravida. Vivamus consequat nulla at turpis. Nunc hendrerit interdum tellus. Maecenas interdum. Sed commodo, ligula in imperdiet tristique, orci mauris commodo diam, rhoncus laoreet nisl magna sed arcu. Fusce hendrerit, lacus nec adipiscing lobortis, ligula elit suscipit massa, eu euismod nisi leo vel justo. Curabitur mattis diam ut ipsum. Sed tincidunt, quam non mollis venenatis, est nisi ultrices nunc, id rhoncus sapien justo id pede. Fusce augue tortor, dapibus ut, euismod eu, posuere nec, erat. Phasellus velit. Nulla diam velit, posuere vel, euismod molestie, fringilla et, nunc.

    Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Etiam eu dui at turpis aliquam pulvinar. Maecenas eget risus. Maecenas enim. Nulla vulputate sem a felis. Fusce lacinia euismod enim. Mauris leo. Maecenas tempus, augue eu tempus gravida, metus sem consequat ipsum, eget adipiscing enim pede vel mauris. Fusce faucibus, odio id bibendum placerat, ipsum diam eleifend nisl, ut sagittis lacus enim vel turpis. Vestibulum tristique nulla a leo. Proin sollicitudin. In ligula mauris, blandit id, fermentum quis, gravida nec, est.

    Aenean posuere risus. Integer quis ligula. Mauris dignissim auctor eros. Phasellus placerat. Quisque euismod. Morbi pellentesque. Nullam quis orci. Ut vulputate lacinia eros. Donec leo lacus, elementum eu, vulputate vel, rhoncus vitae, felis. Sed et lacus. Nullam et sem.

    Curabitur in arcu quis urna sagittis rutrum. Mauris rutrum nisl vel arcu. Maecenas mauris enim, tempus posuere, pulvinar eu, ullamcorper in, odio. Suspendisse dolor. Morbi libero mauris, ullamcorper id, fringilla laoreet, sodales at, odio. Etiam metus. Cras lacinia risus id pede. Phasellus elementum ornare lectus. Sed vitae diam. Nunc eu quam. Phasellus ipsum tellus, imperdiet nec, ullamcorper et, egestas vitae, purus. Proin mattis, lectus sit amet dignissim tempus, nunc nibh laoreet erat, in tempor erat quam at ligula. Aenean fringilla cursus sem. Aliquam erat volutpat. Curabitur luctus placerat sem. Integer consectetuer sodales lectus.

    Sed vulputate nisi at neque congue facilisis. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Mauris ac erat. Donec elit. Duis urna pede, congue sed, volutpat id, lobortis in, mauris. Ut mollis ante ut neque. Duis viverra libero at justo. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin quam. Nullam nulla. Aliquam at nulla. Donec tristique imperdiet erat. Sed mollis pretium metus. In faucibus aliquet sem. Sed viverra tristique leo. Praesent ut nisi. Donec ac ligula eu nibh placerat ultricies.
    Generated 5 paragraphs, 429 words, 2895 bytes of Lorem Ipsum

    Copy & paste the code below to embed this comment.
  38. That was an accident.  I was horsing about with the comments control. 

    I would like to remove it, but can’t.

    Copy & paste the code below to embed this comment.
  39. I also don’t see any distinct advantages with this new presentation model except for the change in semantics. As a career C/C++ GUI developer I’ve seen the OOP model obfuscated to no end in a vain attempt to simplify the nature of coding through API’s, toolkits and template libraries. As far as web development is concerned, my attitude is “if something isn’t broken, don’t fix it”. As web developers (not unlike C++ developers) the more advanced we take our art and develop hacks to accomodate functionality that isn’t inherent in the fundamental architecture, new conventions intrinsicly inhibit the evolution of the principles of design and cause us to write hacks.

    Besides, not every webpage layout follow the same style, so burdening developers with new structures such as navigation, header, etc, is re-inventing the wheel when what the new semantics accomplish is somethign that has already been addressed.

    Copy & paste the code below to embed this comment.
  40. I’m really keen on new web technology, especially I love AJAX. The problem with new technologies is, that it doesn’t work with old browsers and most users don’t upgrade their browsers fast enough :(

    Copy & paste the code below to embed this comment.
  41. Wow…it’s interesting. i will to see

    Copy & paste the code below to embed this comment.
  42. I really think just having a migration to xml would be better, instead of all of these tags defined for us. seems very limiting.

    Copy & paste the code below to embed this comment.
  43. This is very useful addition to the general knowledge on the subject.

    Copy & paste the code below to embed this comment.
  44. I was looking for a solution to a structural markup problem I’m having and came across the “HTML+ specification”:http://www.w3.org/MarkUp/HTMLPlus/htmlplus_1.html from 1993. Now why don’t they just implement some (or most) of the tags discussed in this document?

    Copy & paste the code below to embed this comment.
  45. Certainly not those hellbent on staying in the html stone age who will have to learn a host of new things.

    I don’t see how it helps the standards community by blurring content with presentation once again.

    Nor do I see how it helps people innovate the web by implementing very specific inflexible tags. If there’s going to be a new html it should be what we have with fewer, more general tags, not more.

    Reading the specs reminds of that scene in Robocop 2 where a committee of politicians reprograms his directives and he goes from four to thousands.

    I’m still not clear what the actual purpose of html 5 is? We’re already on the right track. We have everything we need to keep content, presentation and behavior separate.

    Copy & paste the code below to embed this comment.
  46. “Benefits of Using HTML
      * Backwards compatible with existing browsers
      * Authors are already familiar with the syntax
      * The lenient and forgiving syntax means there will be no user-hostile “Yellow Screen of Death”? if a mistake accidentally slips through
      * Convenient shorthand syntax, e.g. authors can omit some tags and attribute values”

    I thought we’d all agreed that most of these “benefits” were a “bad” thing that contributed to browser bloat and accessibility.

    Excess backwards compatibility forces us to continue to limit our sites for people who refuse to move on from the stone age.

    Allowing improper nesting and syntax aggravates the issue of cross-browser compatibility. I have no problem with maintaining the core elements in future versions of xhtml (as long as all presentational attributes get yoinked) but I don’t think it’s too much to ask of people to write it all in lower case and close their damn tags properly so we don’t have to deal with 8 browsers that look for and compensate for these mistakes in 8 different ways.

    Has the W3C forgotten why it was formed in the first place? What’s the point of a spec that lets people ignore standards to a greater degree than xhtml transitional and strict do?

    Copy & paste the code below to embed this comment.
  47. I just tried out the HTML 5 <video> tag on Safari 3.1.

    Looking forward even more towards a full scaled HTML 5 support in all major browsers.

    It’s just wonderfull!

    Copy & paste the code below to embed this comment.
  48. Anything that makes rendering the UI easy can only be a step in the right direction. This will enable interaction designers to quickly set up mock ups for their clients and hence enhance rapid prototyping.

    Copy & paste the code below to embed this comment.
  49. good to see this in the works

    Copy & paste the code below to embed this comment.
  50. I am not sure I can see the purpose of HTML 5 and changing from divs to headers, nav, etc.  I like that the div is generic because of nesting multiple divs.  For instance, at times I make a header with 3 <div>s.  1 main div, 2 nested divs, one floated L and R.  Can you do all this nesting with HTML 5?  Theres more complex layouts then just those basic areas mentioned.  how can 5 do that?  And what is wrong with XHTML and CSS???  I like CSS and the things I can do with it.

    I think HTML 5 is a step backwards.  Definitely not a good thing.  Just a cryin shame.

    Copy & paste the code below to embed this comment.
  51. I don’t think the HTML5 specification will do anything to progress the Web and more to the point, it will most likely become a lost chapter in web history.

    It attempts to further dictate how to markup a document to a Web browser – which in the end is just a program that draws things on a screen to present to the user. Oh, and it has a URL box at the top that allows you to warp to other presentations.

    Let’s be honest, HTML was only a solution to marking-up plain text, and it WASN’T great at that either.

    As a language, HTML gave the computing world:
    1) the ANCHOR tag.
    2) JavaScript (Because people quickly realized how dull HTML was)

    A better solution:
    How about a DirectX mode (Or OpenGL mode?) Or XAML or SVG mode? I mention these just for the out-of-box thinking, not that I want to write up a text document in DirectX.

    But that’s why people have been excited about Flex and Silverlight – because it’s write-once, standard across all platforms in presentation.

    Christ, we already have 100’s of existing languages that can do this, we just need to say YES this is the new language of the web – and then add some simple context markup to it.

    Copy & paste the code below to embed this comment.
  52. This certainly is an interesting debate, but I think the comment made by Niels Matthijs at #19 and the author’s comments at #11 helped me to get off the fence, and to embrace the new version of the language. Thanks!

    - Rod Homor

    Copy & paste the code below to embed this comment.
  53. First of all, thanks for the article. I came across it while searching for clarification on how the <section> & <article> elements might play out on a page. Your example was great & made perfect sense.

    For quite some time, I have marked up all my pages with <divs> with ids (“container”, “header”, “navcontainer”, “content”, etc.), but I’ve always had this nagging feeling that I was somehow cheating the system (semantically speaking). I teach web design to high school students, and I approach the subject with an emphasis on semantic markup, so every time I teach layouts, I always wonder if I should use <div>s in so many different ways (we’ll call it the semantic angel on my shoulder speaking).

    I’m a little tired of my semantic demon winning out every time I teach layout design, so I’m seriously considering teaching layouts using the new HTML5 elements the way this article presented it. To me, the extra tags in HTML5 provide what I was looking for (for the most part).

    The headers have also given me some semantic soul-searching as well. I usually place an <h1> tag in the “header” div for the name of the site. Every time I do that, though, I wonder whether it’s appropriate or inappropriate to place an <h1> or <h2> at the top of the “content” div. Now that there are semantic sections to my page (headers, articles, sections, etc.), I suppose the title to each of those sections would most naturally be an <h1>, and that problem is solved too. 

    I still plan to use a container <div> every now and then to allow myself more CSS options, and I’ll probably always have a little semantic angel on one shoulder trying to convince me otherwise.

    As to all the authors who have vented over browser implementation (especially IE), I think you are misplacing your anger. It’s a necessary evil, but we’ve been dealing with it for many years now. I’ve learned to add a few conditional ie tags to isolate IE 5 & 6 in order to fix a few of their annoying bugs, add a png-fix, and then I moved on with my life.

    As to the 10-year implementation, my understanding is that the <abbr> tag was not implemented by IE until version 8 (from A Day Apart: HTML5 in Seattle). They are being realistic about how long it takes for browsers to get it right (especially IE).

    Copy & paste the code below to embed this comment.
  54. http://discussions.apple.com/thread.jspa?threadID=2544849

    Copy & paste the code below to embed this comment.
  55. Fantastic article. Thanks for sharing overview of html 5.

    Copy & paste the code below to embed this comment.
  56. Thanks for the article.
    Is very important use the new html5 tags.. but it is even more important use it well!

    Copy & paste the code below to embed this comment.