PDA

Voir la version complète : Mozilla travaille sur l'implémentation du support d'un ensemble de préfixes -webkit



ironman
06/01/2016, 18h50
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 :




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 */
}





Daniel Holbert, un développeur Mozilla, « 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) ».

Dans le bug 1107378, Mozilla a lancé une version JavaScript de cette fonctionnalité qui n’é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.

**Hidden Content: Check the thread to see hidden data.**