Firefox 4 : le point sur le support des standards
HTML5, CSS3 et JavaScript, tour d'horizon des standards et technologies Web pris en charge par la nouvelle version du navigateur Open Source de la fondation Mozilla.
Mozilla promeut les efforts accomplis autour de la rapidité d'exécution, afin de rester en course avec Chrome. Le moteur JägerMonkey prend du poil de la bête avec ECMAScript5. Il permet à Firefox de se repositionner dans le peloton de tête des navigateurs les plus performants pour l'exécution de code JavaScript.
L'accélération matérielle est aussi mise en avant pour Windows 7, Vista, XP (Direct2D/Direct3D) et Mac OS X (OpenGL). Du point de vue HTML5, un analyseur syntaxique spécifique fait son apparition.
Voici une liste de fonctionnalités dont certaines figuraient déjà dans Firefox 3.6 :
HTML5 et API JavaScript
Sections HTML5 (<section>, <article>, <nav>, <header>, <footer>, <figure>, <figcaption>, <aside>, <hgroup>)
<summary> et <menu>
L'élément <datalist>
Certains nouveaux types pour <input> en HTML5 (search, tel, url, email)
<audio> avec Ogg/Vorbis, WebM et PCM
<video> avec Ogg/Theora et WebM
Mozilla Audio API
<canvas> et Canvas Text
SVG (dont SVG dans CSS et <img>), filtres SVG et animation SMIL
API Géolocalisation
MathML
Offline Web Applications
Drag & Drop
History API
File API (partiel)
Web Storage (sessionStorage, localStorage)
Web Workers
IndexedDB (partiel)
XMLHttpRequest 2
L'événement hashchange
DOM classList
FormData
Support des événements tactiles (simples et multi-touch, non standards)
CSS3
CSS3 Border-radius (désormais sans le préfixe -moz)
CSS3 Box-shadow (désormais sans le préfixe -moz)
CSS3 Text-shadow
CSS3 Multi-column Layout (avec le préfixe -moz)
CSS3 Flexible Box Layout (avec le préfixe -moz)
CSS3 Multiple Backgrounds dont background-clip, background-origin et background-size
CSS3 Border-image (avec le préfixe -moz)
CSS3 2D Transforms (avec le préfixe -moz)
CSS3 Transitions (avec le préfixe -moz)
CSS3 Gradients
Polices au format WOFF
Reconnaissance des pseudo-classes :-moz-handler-crashed, :-moz-placeholder, :-moz-submit-invalid, :-moz-window-inactive, :invalid, :optional, :required, :valid et du pseudo-élément :-moz-focusring
Les propriétés CSS2.1 d'impression sont (enfin) totalement reconnues : widows, orphans, page-break-inside, page-break-before, page-break-after
Cette dernière mouture de Firefox propose d'autres améliorations de moindre importance qui allongeraient cette liste.
Accessibilité
Les utilisateurs de lecteurs d'écran et autres assistances techniques bénéficient avec la version 4.0 de Firefox d'un net gain de performance lors du chargement de pages complexes.
Ils perçoivent également de nouveaux éléments HTML5 sans recours explicite à ARIA : un élément nav est par défaut associé au role ARIA (de type landmark) navigation, <article>, au role main (etc.) et un attribut comme required.
Marco Zehe, un des champions de l'accessibilité chez Mozilla, détaille ces nouveautés et bien plus dans deux billets : New in Accessibility in Firefox 4.0 et New accessibility support for HTML5 elements and attributes.
Absences
Les codecs et conteneurs MPEG-4 et H.264 ne sont pas supportés pour la balise <video>, pour des raisons de licences. De même du côté de l'<audio> avec MP3 et AAC.
Les éléments <details> et <command>
Certains nouveaux types pour <input> en HTML5 (date, datetime, datetime-local, time, week, month, year, number, range...)
<progress> et <meter>
HTML5 Microdata
CSS3 Animations
SVG Fonts
Web Sockets (désactivé pour des raisons de sécurité)
Server Sent Events
Web Notifications
CSS3 3D Transforms
Extrait d'un article réalisé par dew (Alsacréations, Strasbourg) sous licence Creative Commons.