8. <section>
• Groupage thématique du contenu
<section id="articles">…</section>
<section id="twitter">…</section>
≠
<div id="sidebar">…</div>
• Les sections ont des headings indépendants
9. <header>/<footer>
• <header> : Introduction, aide à la navigation
• <footer> : Informations sur la section (meta)
<body><header id="header">…</header>
<section id="news"><header>…</header>
<footer id="footer">…</footer></body>
<footer>…</footer></section>
10. <nav>
• Sectionsite, dans la page, etc.)
(dans le
permettant de naviguer
<nav>
<h1>Navigation</h1>
<ul>
<li><a href="">Accueil</a></li>
<li><a href="actualites">Actualités</a></li>
…
</ul>
</nav>
<nav id="prelude">
<p>Aller au :</p>
<ul>
<li><a href="#contenu">contenu</a></li>
<li><a href="#recherche">moteur de recherche</a></li>
…
</ul>
</nav>
11. <article>
• Section représentant un contenu indépendant
du reste du document
<section id="articles">
<article><h1>Article 1…
<article><h1>Article 2…
<section id="twitter">
<article>Lorem ipsum…
<article>Dolor sit amet…
12. <aside>
• Ce n’est pas une sidebar !
• Section de contenu tangentiellement relié
au contenu l’entourant (?)
• Équivalent d’un encart en typographie
13. <hgroup>
• Utilisé pour regrouper des headings
<hgroup>
<h1>Dr. Strangelove</h1>
<h2>Or: How I Learned to Stop Worrying and Love the Bomb</h2>
</hgroup>
14. <time>
• Écrire des dates et heures
<p>Rendez-vous le <time datetime="2010-10-05">5 octobre</time>.</p>
<p>On se fait un ciné <time>demain</time> ?</p>
<p>Dernière connexion le <time datetime="2010-02-05T10:42:00">5 février à 10:42</time></p>
15. <canvas>
• Dessiner du bitmap avec Javascript
• APIs 2D et 3D
Raycasting (dev.opera) Visualisation with processing.js
16. <audio>/<video>
• Insérer des éléments multimédia facilement
• Éviter d’avoir à utiliser un plugin
• Accessibilité, performance
21. Balises redéfinies
• <i> : Termes techniques, expressions
idiomatiques, les pensées… Habituellement
mis en italique en typographie.
• <b> : Mots clés, nom de produit…
Habituellement mis en gras en typographie.
• <strong> : Ajoute de l’importance
• <small> : Petites lignes
28. API ?
Application Programming Interface
Ensemble de fonctions mises à disposition
29. Web Forms 2.0
Vérifier les contraintes des champs
<form>
<input type="number" value="coucou" />
<input type="email" value="me@neovov.com" />
</form>
var
form = document.getElementsByTagName("form")[0],
input = document.getElementsByTagName("input");
input[0].checkValidity(); // false ("coucou" n'est pas un nombre)
input[1].checkValidity(); // true
form.checkValidity(); // false
30. Web Forms 2.0
Vérifier les contraintes des champs
<form>
<input type="number" value="1" />
<input type="email" value="me@neovov.com" />
</form>
var
form = document.getElementsByTagName("form")[0],
input = document.getElementsByTagName("input");
input[0].checkValidity(); // true
input[1].checkValidity(); // true
form.checkValidity(); // true
53. Offline API
feature detection
!!window.applicationCache
54. Web Storage
Cookies sous stéroïdes
• Association clé valeur
• Deux storages :
• session (supprimé à la fermeture de l’onglet)
• local (conservé, comme les cookies)
55. Web Storage
Cookies sous stéroïdes
window.sessionStorage.setItem("test", "youpi");
// Actualisez
window.sessionStorage.getItem("test"); // youpi
// Fermez et ré-ouvrez l’onglet
window.sessionStorage.getItem("test"); // null
66. Ressources (W3C)
• HTML5: The Markup Language http://dev.w3.org/html5/markup/
• HTML5 Author Edition http://dev.w3.org/html5/spec-author-view/
• Diff. http://dev.w3.org/html5/html4-differences/
• Spec. http://dev.w3.org/html5/spec/Overview.html
67. Autres ressources
• Dive into HTML5 http://diveintohtml5.org
• Detecting HTML5 features
http://diveintohtml5.org/detect.html
• Peeks, Poke and Pointers (cheats sheet)
http://diveintohtml5.org/peeks-pokes-and-
pointers.html
• HTML5 Doctor http://html5doctor.com
• HTML5 Gallery http://html5gallery.com
(mais attention …)
68. Autres ressources
• html5shiv http://code.google.com/p/html5shiv/
• When can I use… http://caniuse.com
• HTML5 & CSS3 Support
http://findmebyip.com/litmus