Mozilla travaille sur l'implémentation du support d'un ensemble de préfixes -webkit
de fonctionnalités CSS sur son navigateur
Pendant un moment, les préfixes spécifiques aux navigateurs servaient aux développeurs qui souhaitaient faire exécuter un code spécifique sur un navigateur. L’objectif était de permettre le développement progressif et l’implémentation des modules CSS.
Avec ce principe, les navigateurs pouvaient ajouter le support de fonctionnalités particulières sans attendre la publication définitive dans la norme. Le rendu pouvait donc être testé en situation réelle, facilitant ainsi la migration vers la syntaxe finale étant donné qu’il suffisait de retirer uniquement le préfixe lors de la validation officielle de la propriété et des valeurs qu'elle peut accepter.
Aussi viennent les préfixes -o pour les anciennes versions d’Opera, -moz pour Gecko (Mozilla), -webkit pour Webkit (Chrome, Safari, Android), -ms pour Microsoft (Internet Explorer), -khtml pour KHTML (Konqueror).
Par exemple, s’il fallait s’assurer que la propriété border-radius, qui est destinée à arrondir les angles des boîtes sans utiliser d'images ou de techniques alternatives, fonctionne sur Chrome et Firefox, il était possible de définir la classe angles_arrondis comme ceci :
Daniel Holbert, un développeur Mozilla, a expliqué que « une bonne partie du web aujourd’hui (et en particulier l’internet mobile) repose efficacement sur les préfixes –webkit des propriétés et fonctionnalités CSS. Nous aurions souhaité être dans un monde où le contenu web inclut des fallback normalisés (ou alors au moins des préfixes issus de plusieurs éditeurs de navigateur). Mais, hélas, nous ne vivons pas dans ce monde. Pour réussir à apporter un rendu web conforme, nous devons ajouter un support à une série de préfixes -Webkit de propriétés et fonctionnalités CSS qui sont fréquemment utilisées. Tous les autres moteurs de navigateurs populaires implémentent déjà un support pour ces alias – bien évidemment Blink et Webkit les ont et Edge les a inclus pour un souci de compatibilité (je ne suis pas sûr de ce qu’il en est quant au support sur Internet Explorer, mais il ne s’agit pas là d’une donnée particulièrement importante étant donné que Microsoft concentre ses efforts sur les avancées de son navigateur Edge) ».
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 .angles_arrondis { -moz-border-radius : 7px; -webkit-border-radius : 7px; border-radius : 7px; /* Propriété qui permet de définir le rayon */ }
Dans le bogue 1107378, Mozilla a lancé une version JavaScript de cette fonctionnalité qui était active pour l’établissement des listes blanches (qui dépendent toutes fortement sur les préfixes –webkit pour en faciliter l’utilisation). « Cette expérience pour faire des listes blanches de sites utilisables dans Firefox a été couronnée de succès », a noté Holbert. Il a expliqué par la suite que « la nouvelle implémentation (derrière "layout.css.prefixes.webkit") va remplacer l’implémentation JavaScript expérimentale ».
En clair, ce moteur d’émulation, qui pourra être activé via le paramètre « layout.css.prefixes.webkit » dans le menu « about:config », va permettre à Firefox de lire une série de préfixes webkit et en faire un fallback automatique vers le préfixe –moz ou alors vers un code CSS standard dans le cas où la fonctionnalité est déjà supportée par Firefox.
L’idée derrière ce moteur d’émulation est sans doute d’apporter un meilleur support aux sites qui sont conçus spécifiquement pour les navigateurs Webkit et permettront d’avoir le rendu escompté sur le navigateur Firefox sans que les développeurs n'aient à altérer leur code.
Source : Groupes Google
Et vous ?
Qu'en pensez-vous ?
Voir aussi :
La version stable des API WebExtensions sortira avec Firefox 48, Mozilla donne des détails sur le projet d'extensions compatibles avec Chrome et Opera
Firefox 43 est disponible avec une version 64 bits pour Windows, Mozilla promet des gains de performance pour cette nouvelle branche
En 2016, Firefox pourrait accueillir du code Rust et des composants de Servo, le moteur de rendu web sécurisé de Mozilla
Partager