Mémé, je vais parler technique, écoute moi si ça t’intéresses …
HTML5, concrètement c’est quoi ? Si vous n’avez pas lu la première partie de cette suite d’articles, je vous invite à le faire maintenant Nous l’avons vu, HTML permet l’affichage de contenu multimédia sur une page web. HTML5 lui va beaucoup plus loin. Passons en revu les différentes fonctionnalités qu’apporte cette nouvelle version du langage.
Je rappelle ici que je propose une explication volontairement simple des fonctionnalités HTML 5. Pour plus de précisions ou d’infos, n’hésitez pas à consulter le site du W3C, ou la doc de Mozilla : MDN (par exemple)
Les balises
Cette version du langage apporte aussi sont lot de nouvelle balises. Pour rappelle, les balises HTML servent à donner un sens aux contenus qu’elles contiennent. Le web n’étant pas uniquement lu par des humains, le sens des contenus doit-être indiqué. Ceci afin d’aider les robots(les moteurs de recherche par exemple) qui parcours le web de comprendre les pages. html 5 fournit une panoplie beaucoup plus large de balises permettant de donner d’avantage de sens aux pages web. Voici quelques exemples :
<article>
Une balise article est un conteneur global, c’est une partie de la page qui pourrait être prise individuellement et être utilisé ailleurs, comme par exemple un blog, un agrégateur de contenu, un magazine en ligne … Un contenu encadré d’une balise article ne doit pas être dénué de sens une fois “externalisé” le contenu doit-être autonome. Pour cela à l’intérieur de cette balise article nous devrions retrouver une autre nouvelle balise HTML 5 : header
<header>
Comme son nom l’indique une balise header encadre des informations d’entêtes et ce à plusieurs niveaux sur une même page. Nous pourrions avoir une balise header pour la partie haute de notre page web, mais aussi un balise header à l’intérieur d’une balise article. L’entête de la page contiendrait le logo, une phrase d’accroche, un menu peut-être. L’entête de l’article contiendrait lui, le titre de l’article, sa date de parution, l’auteur…
<footer>
Toujours dans notre balise article nous devrions aussi ajouter une autre nouvelle balise html5 : footer. Cette balise au nom équivoque, permet de spécifier des informations de bas de page. A l’instar de la balise header, footer peut(doit) être utilisé à plusieurs niveau de la page web. En pied de page global, mais aussi à l’intérieur de notre balise article. Le footer de la page web contiendrait les mentions légales, un lien de contact, un copyright… Le footer de l’article contiendrait les sources de l’article, une information de bas de page…
<nav>
Une page web contient beaucoup de liens, de différents “niveaux”. Le menu de navigation du site, pour aller de rubrique en rubrique par exemple devrait être encadré d’une balise nav.
<aside>
Si une balise article contient un contenu autonome (un texte, un diaporama, une vidéo…) aside lui, contiendra les contenus annexes de la page web : listes des derniers commentaires, les articles archivés, l’agenda … aside est en quelque sorte la colonne latérale que nous avons l’habitude de voir sur un site web.
<section>
Section doit-être vu comme un conteneur global. Par exemple si nous avons plusieurs articles dans une même pages, nous devrions les encadrer par une balise section.
JavaScript
Cette nouvelle version du langage, apporte non seulement son lot de nouvelle balise, mais elle apporte aussi une pléthore de nouvelle fonctionnalité. Pour ce faire HTML à besoin d’un autre langage : JavaScript. C’est grâce à ce langage qu’il est possible de “piloter” HTML5. Passons en revu quelques-une de ces nouvelles possiblités
Géolocalisation
Sans doute plus utile pour une version mobile d’une page web, cette fonctionnalité permet de positionner dans l’espace (géolocaliser), un utilisateur. C’est ainsi qu’il est possible d’afficher des contenus en rapport avec le lieu duquel vous être en train de consulter une page web. Trouver une restaurant proche de vous, vérifier si un de vos amis Facebook se trouve près de vous, “marquer” votre emplacement actuel sur carte … Cette fonctionnalité existait déjà sous un environnement “natif” comme un Iphone, mais l’avantage d’une utilisation via HTML 5 est qu’il est possible de l’exploiter d’une manière plus interopérable.
Canvas
Ce nouvel outil, permet de faire quelque chose que vous connaissez très bien mais via un autre outil : Flash. Canvas nous permet, sur une zone dédiée d’une page web, de dessiner, manipuler des images, animer des éléments, … Quel intêret d’utiliser un nouvel outil si Flash le fait depuis de nombreuses années ? Tout simplement Flash n’est pas (plus) disponible sur mobile ! Pour la réalisation de jeux sur mobile, Canvas est parfaitement adapté.
Audio / video
Pour lire des vidéos ou écouter des pistes audio sur un navigateur (de bureau ou mobile), l’outil le plus souvent utilisé pour cela est Flash. Celui-ci propose des interfaces simple et intuitive pour cela (en plus de prendre en charge les formats d’encodage, bien sur). Avec les API’s Audio et Vidéo, Html5 standardise ces outils. Plus besoin de flash, puisqu’il est possible de prendre en charge les sons et les vidéos directement en HTML via les balises <video>, <audio>. A l’instar de Flash, une interface paramétrable permet de gérer le volume, le lancement ou la pause, le temps écoulé depuis le lancement du média …
Il existe bien d’autres nouvelles balises (<figure>, <details>, <command>…), je vous rappelle que pour aller plus loin, n’hésitez pas à vous procurer le livre de Rodolphe Rimelé aux editions Eyrolles : HTML5
Voilà ma petite mémé, ça c’était pour la partie technique … tu peux te réveiller maintenant.
Pour toi lecteur (Grand-Mère dort encore) : pour la prochaine partie de cette série de billets, nous parlerons de CSS, ou quand se rencontre le graphiste et le développeur.












