Jeudi 2 juillet, le
W3C a annoncé qu'il abandonnera ses travaux sur le
XHTML 2 cette année, au profit du
HTML 5, qui commence à se faire connaître notamment grâce à sa balise
<video>
déjà intégrée à plusieurs navigateurs dont
Firefox 3.5 (
voir une démonstration de la balise sur Dailymotion : la technologie Flash n'a pas été utilisée et Firefox 3.5 est nécessaire).
Pourquoi cet abandon ?
Depuis plusieurs années, le W3C, l'organisme qui fait évoluer les standards du web, travaille sur la nouvelle version du XHTML intitulée
XHTML 2. En parallèle, le projet de créer une nouvelle version de HTML avait été lancé : c'est
HTML 5.
En pratique, ces 2 projets étaient redondants car ils allaient servir à la même chose, c'est-à-dire à développer des sites web. Plutôt que de séparer leurs efforts inutilement, les membres du W3C ont décidé de les unir au profit de HTML 5, dont le groupe de travail est beaucoup plus dynamique.
Il n'y aura pas de XHTML 2... mais alors ça veut dire qu'il faut dès à présent arrêter de développer en XHTML et retourner au HTML ?
Pas du tout. XHTML 2 et HTML 5 sont en fait 2 langages à la fois très différents et très proches. Différents parce qu'ils essaient chacun d'explorer une façon de concevoir une page web, mais aussi proches car, au final, ces langages sont constitués de la plupart des balises que nous connaissons bien.
Certaines des bonnes idées de XHTML 2 vont être reprises dans HTML 5. Celles qui n'ont pas fait leurs preuves seront en revanche abandonnées pour ne pas perdre plus de temps.
Enfin, XHTML 1.0 et XHTML 1.1 continueront d'exister. Il sera toujours possible de développer en XHTML 1.0 même dans de nombreuses années encore.
Est-ce que ce n'est pas un retour en arrière de revenir au HTML ?
Le HTML n'était pas très strict et HTML 5 ne le sera pas davantage. En clair, rien ne nous obligera à fermer certaines balises (comme
<input>).
En revanche, il existera une version "XML" de HTML 5 que l'on appelle déjà
XHTML 5. Elle sera plus stricte (pour respecter les règles du XML) et ce sera en fait la "suite" du XHTML 1. Les habitués du XHTML ne seront donc pas dépaysés et pourront profiter des bonnes idées introduites dans HTML 5.
Historique du HTML
A l'instar du
XHTML, le
HTML est un langage de balisage permettant de concevoir le design des applications et sites Web. Ces deux langages ont une syntaxe qui est très similaire.
En 1991, le
HTML 1.0 est créé par un homme, Tim Berners-Lee, qui met en place un langage permettant de structurer les pages Web. En 1994, après l'apparition des navigateurs
NCSA Mosaic et
Netscape Navigator, le W3C enrichit le langage et crée le
HTML 2.0, qui comprend principalement comme nouveauté l'implémentation de la structure
DOM, c'est-à-dire en arbre. Le
HTML 3.2 apparait en 1996 et permet entre autres désormais d'interagir avec d'autres langages tels que le JavaScript et le CSS. La version
HTML 4.0, sortie en 1998 promet l'utilisation de
frames et l'amélioration des tableaux et des formulaires.
Deux ans après, en 2000, l'évolution du HTML est rompue et un nouveau langage reprenant le HTML est créé : le
XHTML 1.0. Conçu afin d'être universel, c'est-à-dire fonctionner de la même manière quel que soit le navigateur. Ce langage est strict, c'est-à-dire qu'il doit respecter la spécification XHTML délivrée par le W3C.
L'arrivée du
XHTML 1.0 était une véritable révolution pour tous les webmasters soucieux de produire un site Web de qualité. Mais ce langage restait basé sur une version 4 du HTML qui se faisait de plus en plus obsolète avec l'arrivée du web 2.0, axé multimédia et communautaire. Une nouvelle évolution majeure paraissait donc nécessaire et le W3C a alors entamé la réflexion sur
HTML 5, en plus du XHTML 2 qui se préparait.
Quelles nouveautés apportera le HTML 5 ?
De nombreuses modifications sur la syntaxe du code ont été apportées dans le HTML 5. On peut noter entre autres la déclaration du
doctype. En XHTML 1, il y a plusieurs
doctypes, qui sont en plus assez indigestes à retenir, prenons comme exemple celui du
XHTML 1.0 Strict :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
En HTML 5,
le doctype est simplifié à l'extrême et est raccourci en
<!DOCTYPE HTML>
. De plus, de nombreuses balises apparaissent, à la manière de la balise
<video>
déjà mentionnée dans l'introduction :
- <section>
: elle sert à identifier le contexte d'un bloc de contenu et ainsi permettre de mieux structurer une page, elle peut contenir des titres (par exemple <h1>
) et des paragraphes <p>
;
- <article>
: elle permet d'indiquer un contenu indépendant de la page, par exemple un post sur un forum ou un blog. Il est possible d'imbriquer plusieurs balises <article>
, dans le cas par exemple de commentaires ;
- <footer>
: elle représente le footer pour la section à laquelle elle s'applique, il contient donc généralement des informations sur celle-ci (auteur par exemple) ;
- <progress>
: celle-ci indique le niveau d'avancement d'une tâche ;
- <audio>
, qui, comme son nom l'indique, permet d'incorporer un document audio (sons, musiques, etc) sans avoir recours au Flash ;
- <nav>
: elle permet de spécifier l'emplacement d'une section qui contient des liens de navigation interne, comme un menu par exemple ;
- <time>
: celle-là permet d'identifier un élément temporel (heure, date, etc.) ;
- <canvas>
: elle permet d'effectuer des rendus dynamiques d'images bitmap via des scripts (généralement JavaScript) ;
- <aside>
: celle-ci contient un contenu en faible rapport avec la page, ou connexe. Cette section peut être séparée de la page, afin de présenter des contenus différents aux visiteurs.
Cette liste de nouvelles balises présentes dans le HTML 5 n'est évidemment pas complète puisque le langage n'est pas finalisé - le W3C l'annonce courant 2010 - et que toutes les balises ne sont pas présentes non plus.
Désormais, les balises
<li>
,
<dd>
et
<dt>
pourront être exemptées des balises fermantes correspondantes dans certains cas.
Il existe également de nouveaux attributs dans le HTML 5, que vous pouvez consulter sur la
description écrite par le W3C si vous le souhaitez (en anglais assez technique), mais qu'il semble inutile de dépeindre ici.
La nouvelle version de HTML enrichit la description des informations ainsi que la hiérarchisation sous forme de thèmes des contenus avec des balises telles que
<section>
ou encore
<nav>
. Grâce à cette nouvelle version du HTML se rapprochant de la syntaxe du XML de par ses balises thématiques, les moteurs de recherche peuvent ainsi élargir leurs résultats à différents médias (images, audio, vidéos, actualités, localisation géographique...), et l'accessibilité est fortement améliorée puisque la majorité des navigateurs seront contraints de passer à la version 5 du HTML.
Ainsi, la structure d'un site codé en XHTML 2 comme celle-ci :

aura désormais la structure suivante :

Enfin, de nouveaux attributs vont être créés :
- L'attribut autofocus, inséré dans un élément de formulaire, permet, lors du chargement de la page, d'avoir cet élément déjà sélectionné.
- L'attribut required, toujours sur un élément de formulaire, permet d'indiquer au navigateur que cet élément doit être rempli avant l'envoi du formulaire. Encore du Javascript en moins !
L'arrivée du HTML 5 sera un grand pas dans l'évolution du web et de ses standards. En effet, cette nouvelle version facilite l'intégration de contenus multimédias dans une page internet, tout en offrant de nouvelles possibilités pour la création d'applications web, qui se font de plus en plus présentes ces derniers temps. Mais, par la même occasion, le W3C en profite pour poser les premières pierres du
web sémantique, souvent annoncé comme l'avenir du web.
Liens complémentaires
Pour aller plus loin
Sources
240 Participations
Connectez-vous !
Connectez-vous !
Revenir à la liste des news