used to begin a section, usually containing an h1 tag and perhaps navigation.
<nav>
Contains navigation links and assorted associated items.
<footer>
This element contains items typically found at the bottom of a web page - copyright, legal notices, authorship. A page can have multiple "footer" elements. "footer" elements can appear anywhere on a page, sometimes at the top.
<article>
An "article" is a self-contained composition that can be removed from the page and will make sense in a stand-alone fashion.
<section>
A "section" is not self-contained and would not make sense by itself. <section>s are typically found inside of <article>s. A <section> can have its own "h1" tags.
<aside>
A component, typically shown as a note on the side of an article, not critical to understanding the content.
A page may have multiple instances of all these elements and they can be nested inside each other.
Common Structural Composition for a Page
<header><article> 1
<section> A<section> B<article> 2
<section> A<section> B
Reasons To Use The New Tags
Semantic Meaning
Instead of <div id="bottom">, which doesn't give any clue about what is in the <div> tag, <footer> now gives search engines some hints.
Infinite Heading Levels
In HTML4 we had <h1> to <h6>. With the new HTML5 stuctural tags we can go to <h11> by nesting <h1> tags inside <section>'s, nested inside <section>'s, inside <article>'s.
Cleaner Composition Of Content
If a page was aggreagated of sections of HTML4 content with embedded <h2> and <h3>'s, then embedding content with a <h1> would be awkward. With all the heading safely inside <section>, or <article>, the browser can outline the aggregated content and apply the correct styling.
<article>
<header>
<h1 id="Boadicea">Boadicea: An Ode</h1>
</header>
<section>
Then the progeny that springs <br>
<span class="indent2">From the forests of our land, </span><br>
Armed with thunder, clad with wings, <br>
<span class="indent2">Shall a wider world command. </span><br>
</section>
<section>
Regions Ceasar never knew <br>
<span class="indent2">Thy posterity shall sway, </span><br>
Where his eagles never flew, <br>
<span class="indent2">None invincible as they.</span><br>
</section>
<footer>
by William Cowper (1731-1800)
</footer>
<aside>
Inscribed on a statue of Queen Boadicea sculpted by Thomas Thornycroft between 1856 and 1885 near the Westminster B ridge, on the north bank of the River Thames in London.
</aside>
</article>
Yes, yes..., but what about IE?
One of the problems with these new tags is styling them with css in older IE browsers. To style these in IE we need to do two things. First, tell IE that the default is not "inline", but "block" in our css.
Secondly we need to tell IE versions before 9 that these are real, stylable elements. It's just a fortunate quirk of the older IEs, but if we just create the tags, then IE is happy to style them. We could do this,
But fortunately Remy Sharp has written the HTML5 shim which does this and other magic for us and Google is hosting it, so we just have to include this:
<!-- use html5 new elements in old explorer browsers-->
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
Also <frame>s are gone so these tags are now deprecated:
<frame> <frameset> <noframes>
Although <iframe> is still with us.
Some removed items have better implementations:
<acronym> is replaced by <abbr> <applet> is replaced by <object> <dir> is replaced by <ul>
Removed Attributes
These attributes are now deprecated. Browsers will still support them for some time, but be aware they are going away and should be replaced, typically with CSS.
For example, <small> used to mean "render the enclosed text in a smaller font", now it means the enclosed text should have the meaning of being in small print, like copyright and EULA. The actual downsizing should be done in CSS. Search engines can now "down vote" content in <small>.