O XSLT vai sair do Chrome: o que quebra e o que fazer
A partir de 17 de novembro de 2026, o Chrome deixa de aplicar folhas de estilo XSL às páginas XML. As páginas que dependiam delas passam a mostrar um aviso e as tags XML cruas no lugar da página formatada. Veja quem é afetado e as opções para visitantes e para donos de sites.
O que muda em 17 de novembro de 2026
XSLT é a linguagem que transforma um documento XML em uma página legível, usando uma folha de estilo XSL indicada pelo próprio arquivo XML. O Chrome está removendo essa linguagem. O anúncio do Chrome traz este cronograma:
| Versão do Chrome | Data | O que acontece |
|---|---|---|
| Chrome 143 | 2 de dezembro de 2025 | O XSLT é oficialmente descontinuado. Avisos aparecem no console do desenvolvedor e no Lighthouse. |
| Chrome 158 | 17 de novembro de 2026 | O XSLT para de funcionar nas versões estáveis, para todos, exceto participantes do teste de origem e da política empresarial. |
| Chrome 176 | 17 de agosto de 2027 | O teste de origem e a política empresarial param de funcionar. O XSLT fica desativado para todos. |
O Chrome Beta, Dev e Canary começaram a desativar o XSLT por padrão a partir do Chrome 145, como aviso antecipado.
O motivo é a segurança. O Chrome explica que as bibliotecas que executam essas transformações, como a libxslt, são código C e C++ complexo, e que esse tipo de código é sujeito a falhas de segurança de memória, como estouros de buffer.
Páginas em que você pode notar a mudança
O Chrome informa que só cerca de 0,02% dos carregamentos de páginas web usam XSLT, e menos de 0,001% usam instruções de processamento XSLT, a linha de um arquivo XML que indica uma folha de estilo. É raro, mas concentrado em poucos tipos de página:
- Sitemaps do WordPress. Desde o WordPress 5.5, o WordPress publica um índice de sitemaps em
/wp-sitemap.xmle fornece folhas de estilo XSL para formatar todos os seus sitemaps. Veja como ver um sitemap do WordPress. - Feeds RSS e Atom formatados. O Chrome observa que muitos feeds existentes usam XSLT para deixar o XML cru legível quando o feed é aberto direto no navegador. Veja o que fazer quando um feed RSS aparece como texto puro.
- Dispositivos embarcados. O Chrome cita dispositivos comerciais que geram dados XML para usuários da rede local e acrescenta que muitos deles são difíceis ou impossíveis de atualizar. Para esses casos, o Chrome indica a extensão do navegador.
O que você vê no lugar
Sem XSLT, a folha de estilo não é mais aplicada e o layout que ela montava desaparece: sem tabela, sem títulos, sem links clicáveis. Segundo o anúncio do Chrome, o navegador mostra um banner de aviso com um link para uma busca por “xslt polyfill” na Chrome Web Store, para ajudar você a encontrar uma extensão.
Verificamos como fica a própria página. No Chromium 156, com o XSLT desativado, uma página XML ligada a uma folha XSL mostrou a mensagem em inglês “This document cannot be formatted as intended”, seguida do XML cru: as tags e o texto do arquivo, sem nenhum layout.
Suas opções
| Opção | Para | Esforço |
|---|---|---|
| XMLNest | Visitantes | Um clique |
| Extensão oficial XSLT Polyfill | Visitantes | Um clique |
| Script xslt-polyfill no site | Donos de sites | Pequena mudança no código |
| Gerar o HTML no servidor | Donos de sites | Mudança maior |
| Política empresarial XSLTEnabled | Equipes de TI | Até 17 de agosto de 2027 |
Um visitante não pode mudar o site, mas uma extensão pode aplicar de novo a folha de estilo no próprio navegador. O dono de um site pode corrigir a página para todos os visitantes de uma vez. Equipes de TI que gerenciam o Chrome podem usar a política XSLTEnabled para ganhar tempo, até o Chrome 176.
XMLNest ou a extensão oficial XSLT Polyfill?
O anúncio do Chrome aponta para uma extensão, a XSLT Polyfill, que aplica a biblioteca xslt-polyfill às páginas XML cruas que usam XSLT. O XMLNest é uma extensão independente construída sobre a mesma biblioteca de código aberto. Veja as diferenças:
| XSLT Polyfill (oficial) | XMLNest | |
|---|---|---|
| Motor | xslt-polyfill | xslt-polyfill |
| Acesso a sites na instalação | Todos os sites, segundo o Chrome-Stats | Nenhum: ative em todos os sites com um clique, ou site por site |
| JavaScript que usa XSLTProcessor | Compatível, segundo a página dela na loja | Não oferecido |
| XML sem folha de estilo | A página dela na loja diz que ali ela não faz nada | Árvore recolhível com busca, visualização do código-fonte, modos de leitura para feeds e sitemaps |
| Preço | Grátis, segundo o Chrome-Stats | Grátis |
As duas processam as páginas localmente, no seu navegador. O XMLNest também impede que scripts contidos nas páginas transformadas sejam executados, a menos que você os permita naquele site.
Se você só precisa ter de volta as páginas XML formatadas e prefere a extensão indicada pelo Chrome, a oficial é uma boa escolha.
Para donos de sites
O Chrome lista várias formas de manter as páginas XML legíveis sem o XSLT do próprio navegador.
Transformar no servidor. Execute a transformação XSLT no seu servidor e envie o HTML resultante.
Adicionar o script xslt-polyfill. O README do xslt-polyfill mostra um elemento script colocado direto no documento XML, como filho do elemento raiz, depois da linha que indica a folha de estilo:
<script src="../xslt-polyfill.min.js" xmlns="http://www.w3.org/1999/xhtml"></script>
Mantenha o atributo xmlns: o README explica que o elemento script precisa estar no namespace XHTML para ser executado. O polyfill implementa apenas o XSLT 1.0; para versões mais novas, o README indica o SaxonJS.
Para feeds. O Chrome sugere adicionar um elemento <link rel="alternate" type="application/rss+xml"> às páginas HTML do seu site, ou adicionar o script do polyfill ao próprio feed.
Migrar para JSON. O Chrome também cita servir JSON em vez de XML e exibi-lo na página com JavaScript.
Precisa de mais tempo? O teste de origem do Chrome permite que um site mantenha o XSLT depois de 17 de novembro de 2026, até o Chrome 176, em 17 de agosto de 2027.
Dúvidas
Dá para reativar o XSLT nas configurações do Chrome?
O anúncio do Chrome não oferece nenhuma opção para usuários comuns. A partir do Chrome 158, o XSLT só continua funcionando para sites inscritos no teste de origem (origin trial) do Chrome e para navegadores gerenciados com a política empresarial XSLTEnabled, e os dois terminam com o Chrome 176, em 17 de agosto de 2027. Até lá, uma extensão é o jeito simples de um visitante voltar a ver as páginas formatadas.
Os outros navegadores mantêm o XSLT?
Segundo o anúncio do Chrome, os projetos Firefox e WebKit (o motor do Safari) também indicaram planos de remover o XSLT dos seus motores. Confira as notas de cada navegador antes de contar com isso.
O XMLNest é a extensão oficial XSLT Polyfill?
Não. O XMLNest é uma extensão independente que usa o mesmo motor de código aberto, o xslt-polyfill. A extensão oficial XSLT Polyfill é aquela para a qual o anúncio do Chrome aponta.
Fontes
- Chrome for Developers: Removing XSLT for a more secure browser (consultada em 14 de outubro de 2026)
- Chrome Enterprise: XSLTEnabled, Control the availability of the XSLT feature (consultada em 14 de outubro de 2026)
- XSLT Polyfill - Chrome Web Store (consultada em 14 de outubro de 2026)
- Chrome-Stats: XSLT Polyfill (permissões e preço, dados de um serviço externo) (consultada em 14 de outubro de 2026)
- XSLT Polyfill, README de mfreed7/xslt_polyfill no GitHub (consultada em 14 de outubro de 2026)
- Make WordPress Core: New XML Sitemaps Functionality in WordPress 5.5 (consultada em 14 de outubro de 2026)
- Teste do XMLNest : Testado pelo XMLNest no Chromium 156.0.8078.4 em 14 de outubro de 2026, com o XSLT desativado: uma página XML ligada a uma folha XSL mostrou a mensagem “This document cannot be formatted as intended” e, em seguida, suas tags XML cruas (consultada em 14 de outubro de 2026)