XSLT quitte Chrome : ce qui casse et que faire
À partir du 17 novembre 2026, Chrome n'applique plus les feuilles de style XSL aux pages XML. Les pages qui en dépendaient affichent alors un avertissement et les balises XML brutes au lieu de la page mise en forme. Voici qui est concerné, et les solutions pour les visiteurs comme pour les éditeurs de sites.
Ce qui change le 17 novembre 2026
XSLT est le langage qui transforme un document XML en page lisible, grâce à une feuille de style XSL désignée par le fichier XML. Chrome le retire. L’annonce de Chrome donne ce calendrier :
| Version de Chrome | Date | Ce qui se passe |
|---|---|---|
| Chrome 143 | 2 décembre 2025 | XSLT est officiellement déprécié. Des avertissements apparaissent dans la console du développeur et dans Lighthouse. |
| Chrome 158 | 17 novembre 2026 | XSLT cesse de fonctionner dans les versions stables, pour tous les utilisateurs sauf les participants à l’essai d’origine et à la règle d’entreprise. |
| Chrome 176 | 17 août 2027 | L’essai d’origine et la règle d’entreprise cessent de fonctionner. XSLT est désactivé pour tous. |
Chrome Beta, Dev et Canary ont commencé à désactiver XSLT par défaut à partir de Chrome 145, en guise d’avertissement.
La raison est la sécurité. Chrome explique que les bibliothèques qui exécutent ces transformations, comme libxslt, sont du code C et C++ complexe, et que ce type de code est sujet aux failles de sécurité mémoire, comme les dépassements de tampon.
Les pages que vous risquez de remarquer
Chrome indique que seulement 0,02 % environ des chargements de pages web utilisent XSLT, et moins de 0,001 % utilisent des instructions de traitement XSLT, la ligne d’un fichier XML qui désigne une feuille de style. C’est rare, donc, mais concentré sur quelques types de pages :
- Les sitemaps WordPress. Depuis WordPress 5.5, WordPress publie un index de sitemaps à l’adresse
/wp-sitemap.xmlet fournit des feuilles de style XSL pour mettre en forme tous ses sitemaps. Voir comment afficher un sitemap WordPress. - Les flux RSS et Atom mis en forme. Chrome note que dans beaucoup de flux existants, XSLT sert à rendre le XML brut lisible quand on ouvre le flux directement dans le navigateur. Voir que faire quand un flux RSS s’affiche en texte brut.
- Les appareils embarqués. Chrome cite des appareils du commerce qui produisent des données XML pour les utilisateurs du réseau local, et ajoute que beaucoup de ces appareils sont difficiles, voire impossibles, à mettre à jour. Pour ceux-là, Chrome renvoie vers l’extension pour navigateur.
Ce que vous voyez à la place
Quand XSLT est désactivé, la feuille de style n’est plus appliquée, et la mise en page qu’elle construisait disparaît : plus de tableau, plus de titres, plus de liens cliquables. Selon l’annonce de Chrome, le navigateur affiche un bandeau d’avertissement qui renvoie vers une recherche « xslt polyfill » dans le Chrome Web Store, pour vous aider à trouver une extension.
Nous avons vérifié à quoi ressemble la page elle-même. Dans Chromium 156, XSLT désactivé, une page XML liée à une feuille XSL a affiché le message anglais « This document cannot be formatted as intended », suivi du XML brut : les balises et le texte du fichier, sans aucune mise en page.
Vos solutions
| Solution | Pour qui | Effort |
|---|---|---|
| XMLNest | Visiteurs | Un clic |
| Extension officielle XSLT Polyfill | Visiteurs | Un clic |
| Script xslt-polyfill sur le site | Éditeurs de sites | Petite modification du code |
| Produire le HTML sur le serveur | Éditeurs de sites | Modification plus importante |
| Règle d’entreprise XSLTEnabled | Équipes informatiques | Jusqu’au 17 août 2027 |
Un visiteur ne peut pas modifier le site, mais une extension peut appliquer de nouveau la feuille de style dans son propre navigateur. L’éditeur d’un site peut corriger la page pour tous ses visiteurs d’un coup. Les équipes informatiques qui gèrent Chrome peuvent utiliser la règle XSLTEnabled pour gagner du temps, jusqu’à Chrome 176.
XMLNest ou l’extension officielle XSLT Polyfill ?
L’annonce de Chrome renvoie vers une extension, XSLT Polyfill, qui applique la bibliothèque xslt-polyfill aux pages XML brutes qui utilisent XSLT. XMLNest est une extension indépendante construite sur la même bibliothèque libre. Voici leurs différences :
| XSLT Polyfill (officielle) | XMLNest | |
|---|---|---|
| Moteur | xslt-polyfill | xslt-polyfill |
| Accès aux sites à l’installation | Tous les sites, selon Chrome-Stats | Aucun : activation partout en un clic, ou site par site |
| JavaScript qui utilise XSLTProcessor | Pris en charge, selon sa fiche du Store | Non proposé |
| XML sans feuille de style | Sa fiche indique qu’elle n’y fait rien | Arbre repliable avec recherche, vue source, vues de lecture pour les flux et les sitemaps |
| Prix | Gratuite, selon Chrome-Stats | Gratuite |
Les deux traitent les pages localement, dans votre navigateur. XMLNest empêche en plus les scripts contenus dans les pages transformées de s’exécuter, sauf si vous les autorisez pour ce site.
Si vous voulez seulement retrouver les pages XML mises en forme et préférez l’extension vers laquelle renvoie Chrome, l’officielle est un bon choix.
Pour les éditeurs de sites
Chrome liste plusieurs façons de garder des pages XML lisibles sans le XSLT du navigateur.
Transformer sur le serveur. Exécutez la transformation XSLT sur votre serveur et envoyez le HTML obtenu.
Ajouter le script xslt-polyfill. Le README de xslt-polyfill montre un élément script placé directement dans le document XML, comme enfant de son élément racine, après la ligne qui désigne la feuille de style :
<script src="../xslt-polyfill.min.js" xmlns="http://www.w3.org/1999/xhtml"></script>
Gardez l’attribut xmlns : le README explique que l’élément script doit être dans l’espace de noms XHTML pour s’exécuter. Le polyfill ne gère que XSLT 1.0 ; pour les versions plus récentes, le README renvoie vers SaxonJS.
Pour les flux. Chrome propose d’ajouter un élément <link rel="alternate" type="application/rss+xml"> aux pages HTML de votre site, ou d’ajouter le script du polyfill au flux lui-même.
Passer à JSON. Chrome cite aussi la possibilité de servir du JSON au lieu du XML et de l’afficher dans la page avec JavaScript.
Besoin de plus de temps ? L’essai d’origine de Chrome permet à un site de garder XSLT au-delà du 17 novembre 2026, jusqu’à Chrome 176, le 17 août 2027.
Questions
Peut-on réactiver XSLT dans les paramètres de Chrome ?
L'annonce de Chrome ne prévoit aucun réglage pour les utilisateurs ordinaires. À partir de Chrome 158, XSLT ne fonctionne plus que pour les sites inscrits à l'essai d'origine (origin trial) de Chrome et pour les navigateurs gérés avec la règle d'entreprise XSLTEnabled, et les deux prennent fin avec Chrome 176, le 17 août 2027. D'ici là, une extension est le moyen simple pour un visiteur de retrouver les pages mises en forme.
Les autres navigateurs gardent-ils XSLT ?
Selon l'annonce de Chrome, les projets Firefox et WebKit (le moteur de Safari) ont eux aussi fait part de leur intention de retirer XSLT de leur moteur. Consultez les notes de chaque navigateur avant de compter dessus.
XMLNest est-elle l'extension officielle XSLT Polyfill ?
Non. XMLNest est une extension indépendante qui utilise le même moteur libre, xslt-polyfill. L'extension officielle XSLT Polyfill est celle vers laquelle renvoie l'annonce de Chrome.
Sources
- Chrome for Developers : Removing XSLT for a more secure browser (vérifiée le 14 octobre 2026)
- Chrome Enterprise : XSLTEnabled, Control the availability of the XSLT feature (vérifiée le 14 octobre 2026)
- XSLT Polyfill - Chrome Web Store (vérifiée le 14 octobre 2026)
- Chrome-Stats : XSLT Polyfill (autorisations et prix, données d'un service tiers) (vérifiée le 14 octobre 2026)
- XSLT Polyfill, README de mfreed7/xslt_polyfill sur GitHub (vérifiée le 14 octobre 2026)
- Make WordPress Core : New XML Sitemaps Functionality in WordPress 5.5 (vérifiée le 14 octobre 2026)
- Test fait par XMLNest : Testé par XMLNest dans Chromium 156.0.8078.4 le 14 octobre 2026, XSLT désactivé : une page XML liée à une feuille XSL a affiché le message « This document cannot be formatted as intended », puis ses balises XML brutes (vérifiée le 14 octobre 2026)