Formation HTML 5

Logo de HTML5
Support par les navigateurs

Tour d'horizon des navigateurs

Plutôt que de nous intéresser à chaque navigateur nous passerons en revue les moteurs de rendu sous-jacents.

Association navigateur/moteur de rendu

correspondance navigateurs moteurs de rendus

VersionNavigateurs concernés
Amaya11.3.1Amaya
Gecko2.0Firefox, SeaMonkey, Galeon, Camino, K-Meleon, Flock, Epiphany, GNU IceCat, Iceweasel, Fennec
KHTMLKonqueror
Presto2.8.131Opera, Nintendo DS & DSi Browser, Internet Channel
Prince7.1Prince XML
TasmanIE 5.2.3 for MacExplorer 5+ Mac OS X
Trident5.0 (IE 9)Internet Explorer, Maxthon
WebKit534.20Google Chrome, Maxthon 3, Safari, Shiira, iCab 4, OmniWeb 5.5, Epiphany, Adobe AIR, Midori, Adobe Dreamweaver, CS4 et CS5, Android, Palm WebOS, Symbian S60, OWB, Steam, Rekonq, Arora, Flock

À la lecture du tableau précédent nous voyons que ce nombre reste malgré tout important, mais que certaines réalisations sont très peu répandues telle que celle de prince qui fait cependant un excellent travail sur des documents XML mais uniquement lors de la reproduction sur du papier ou plus généralement pour de la conversion XML vers PDF.

Compatibilité HTML 5

Code de couleurs

Valeur signification
Ouientièrement supporté.
Nonentièrement ignoré.
Partielconnu mais toutes les valeurs ne sont pas interprétées.
Incorrectconnu mais mal interprété.
Expérimentalstade expérimental (potentiellement buggeé).
Enlevén'est plus supporté.
de ce jourau stade expérimental avancé.
Dépendantsupporté que sur certaines plateformes.

Ce code de couleurs est à appliquer aux tableaux suivant cette page.

Compatibilité HTML 5

compatibilité moteurs de rendus

TridentGeckoWebKitPresto
section 5.0 2.0 533 2.7.70
nav
article
aside
hgroup
header
footer
time Non Non Non Non
mark 5.0 2.0 Oui 2.7.70
ruby, rt, rp 3.1 Non 533 Non

Le code de couleurs est décrit dans le tableau de la page précédente.

Nous limitons la présentation aux nouveaux éléments. Il y a également un support plus ou moins bon selon les navigateurs sur les propriétés spécifiques à HTML 5.

Compatibilité HTML 5

Suite du tableau

figure 5.0 2.0 Oui 2.7.70
figcaption
embed <3.1 1.7 85 1.0
video 5.0 (Partiel) 1.9.1 525 2.5
audio
source
canvas 1.9.2 Partiel 2.0
Inline MathML Non 2.0 De ce jour 2.1
Inline SVG 5.0 Oui 1.0
details Non Non De ce jour Non
summary De ce jour
command Non Non
menu
TridentGeckoWebKitPresto

Nous nous limiterons ici aux quatre familles de navigateurs les plus répandues.

Le versions antérieures aux versions citées ne supportent pas les nouvelles balises HTML 5.

Vérification de compatibilité navigateur

Faire un test Acid2 sur InternetExplorer 6 ou InternetExplorer 7 en dit long sur le pourquoi de la difficulté des concepteurs web qui essayent de respecter la norme et d'avoir un rendu correct sur un large éventail de navigateur. Heureusement le comportement de ce test est devenu correct avec InternetExplorer 8.

Détection dans page web

La détection du navigateur peut se faire coté serveur par la vérification du User-Agent, mais attention : en raison du caractère abusif de certains sites à n'accepter que certains navigateurs (le plus souvent InternetExplorer) les autres navigateurs permettent de falsifier leur identité autorisant ainsi l'accès à ces sites réservés.

Détection dans page web

La détection du navigateur par le javascript est garantie car le navigateur n'exécute que les fonctions qu'il connaît.

Depuis l'avènement du web 2.0 rares sont les navigateurs sur lesquels javascript est désactivé.

Comportement alternatif

L'avantage de cette technique est de permettre une migration en douceur vers le HTML 5.

Comportement alternatif

Exemple de code compatible HTML 4 et HTML 5

 <!-- ignorée en HTML 4 -->
<video width="640" height="480" controls="controls">
  <source src="video.mp4" type="video/mp4"/>
  <source src="video.ogv" type="video/ogg"/>
 <!-- ignorée en HTML 5 -->
  <object width="640" height="480"
   type="application/x-shockwave-flash" 
   data="lecteurflash.swf">
 <param name="movie" value="lecteurflash.swf"/>
 <param name="flashvars" 
   value="controlbar=over&image=ima.jpg&file=video.mp4"/>
 <img src="ima.jpg" width="640" height="480" 
   alt="Ma vidéo"
   title="Charger la vidéo"/>
  </object>
</video>

Documentation