Aller au contenu

Modernizr

Un article de Wikipédia, l'encyclopédie libre.
Modernizr
Description de l'image Modernizr 2 Logo.png.

Informations
Développé par Faruk Ateş et la communauté Modernizr
Dernière version 3.12.0 ()[1],[2]Voir et modifier les données sur Wikidata
Dépôt github.com/Modernizr/ModernizrVoir et modifier les données sur Wikidata
Écrit en JavaScript
Système d'exploitation MultiplateformeVoir et modifier les données sur Wikidata
Environnement Navigateur web
Type Framework
Licences Licence MIT
Site web modernizr.com

Modernizr est une bibliothèque développée en JavaScript détectant l'implémentation native par le navigateur de différentes fonctionnalités récentes. Elle est distribuée sous licence MIT.

Historique[modifier | modifier le code]

Faruk Ateş a annoncé la création de Modernizr le [3]. La version 1.0 a été publiée le [4]. La version 2.0 a été publiée le [5].

Fonctionnalité[modifier | modifier le code]

Modernizr est capable de détecter l'implémentation native par le navigateur de technologies web provenant des spécifications HTML5 et CSS 3, toutes deux encore en cours d'élaboration. Modernizr permet aussi la détection d'autres fonctionnalités, comme le support de SVG, de la géolocalisation, de SMIL, des écrans tactiles et de WebGL.

Modernizr fournit donc un ensemble de fonctions permettant de détecter le support par le navigateur de fonctionnalités CSS 3, comme "border-image" ou "opacity", et HTML 5, comme "canvas" ou "draganddrop".

De plus, Modernizr fournit des fonctions utilitaires permettant de faciliter le développement d'applications web compatibles avec différents navigateurs. La fonction Modernizr.load(), permettant le chargement conditionnel d'un script JavaScript en fonction d'un test de fonctionnalité, ce qui permet de faciliter grandement l'utilisation des polyfills. La fonction Modernizr.prefixed() permet de connaitre le nom de l'implémentation d'une fonctionnalité disponible dans un navigateur. Par exemple, Modernizr.prefixed('boxSizing') va retourner "MozBoxSizing" avec Firefox.

Modernizr fournit aussi un module appelé html5shiv, qui permet aussi le support des balises de structure de HTML5 dans Internet Explorer 6. Par exemple, il va dynamiquement transformer les balises section en balise div. Modernizr est donc lui-même un polyfill rendant IE 6 compatible avec les balises de structure de HTML5.

Pour terminer, Modernizr propose des API permettant d'étendre son fonctionnement, en offrant la possibilité d'écrire de nouveaux tests.

Compatibilité[modifier | modifier le code]

Modernizr est compatible avec Internet Explorer 6 ou version ultérieure, Firefox 3.5 ou version ultérieure, Opera 9.6 ou version ultérieure, Safari 2 ou version ultérieure, Chrome, Safari Mobile, le navigateur d'Android, Opera Mobile et Firefox Mobile. Des tests sont en cours[Quand ?] pour confirmer la compatibilité avec le navigateur de BlackBerry 6 ou version ultérieure.

Références[modifier | modifier le code]

  1. « Release 3.12.0 », (consulté le )
  2. npmjs, (base de données en ligne), consulté le Voir et modifier les données sur Wikidata
  3. (en)Proudly Announcing: Modernizr
  4. (en)Modernizr 1.0
  5. (en)Modernizr 2

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Lien externe[modifier | modifier le code]