Limpador e sanitizador de HTML
Cole HTML, escolha uma política e carregue no botão. Recebe a marcação limpa mais um relatório detalhado de cada etiqueta e atributo descartado — e pode anular qualquer decisão sem voltar a colar nada.
Como funciona
Traga o HTML
Cole-o, largue um ficheiro .html ou chegue a partir de outra ferramenta. Fica ali à espera: abrir um ficheiro nunca inicia a limpeza.
Escolha a política
Quatro predefinições cobrem os casos habituais. Abra o painel manual para editar você mesmo a lista de etiquetas, a de atributos e os esquemas de URL aceites.
Execute
Uma única passagem constrói a árvore limpa e regista pelo caminho cada decisão. Um megabyte de marcação demora uns milissegundos.
Reveja e anule
O relatório enumera o que saiu e porquê. Se discordar de uma linha, carregue em Manter: a passagem repete-se com essa única exceção.
O que faz
Política de lista branca real
Etiquetas, atributos e esquemas de URL são listas separadas que você controla. Bloquear uma etiqueta e deixar os seus atributos intactos não é sanear.
Relatório detalhado de remoções
Cada elemento e atributo descartado aparece agrupado com a contagem, uma amostra do que continha e o motivo pelo qual saiu.
Anule qualquer decisão
Carregue em Manter numa linha e o saneamento repete-se permitindo exatamente essa coisa. O seu texto original nunca é editado.
Os esquemas de URL são verificados
javascript:, data:text/html e vbscript: em href, src, formaction, srcset ou xlink:href são apanhados, incluindo os truques com espaços e entidades.
Pré-visualização isolada
O resultado é desenhado num iframe com sandbox vazia e sem referenciador, por isso nada lá dentro pode executar, submeter ou navegar.
Formatado, minificado ou tal como lido
Volte a serializar a mesma árvore limpa de três maneiras. O espaçamento dentro de <pre> é preservado mesmo quando o resto é reindentado.
Passa para a ferramenta seguinte
Envie o resultado direto para DiffSnap, CodeCard, WordFlow, Base64Bolt ou ZipFlow sem descarregar e voltar a carregar.
Nada sai do separador
O saneador é uma biblioteca JavaScript empacotada com a página. Não há envio, nem chamada a uma API, nem pedido a um CDN em momento algum.
Um saneador que mostra o seu trabalho
A maioria dos limpadores de HTML online entrega-lhe uma cadeia de texto e espera que confie. Este guarda o registo de decisões: que etiqueta foi descartada, que atributo foi retirado, que URL falhou a verificação de esquema — e deixa-o anular qualquer uma delas com um clique, porque a saída limpa é regenerada a partir da sua política em vez de remendada depois.
100% privado e seguro
Sem envios, sem chaves de API e sem rastrear o que cola. A biblioteca vai empacotada com a página, por isso também não se descarrega nada de um CDN. O seu HTML fica na memória do separador e desaparece quando o fecha.
Quando precisa disto
Limpar o que um editor de texto rico produziu antes de o guardar. Retirar o lixo do Word e do Google Docs de uma colagem no CMS. Tornar seguro marcação de terceiros antes de a desenhar. Extrair texto legível de uma página guardada. Verificar se a marcação em que vai confiar contém algo executável — o exemplo de payloads conhecidos está ali para que veja a resposta em vez de a supor.
A análise e as decisões de segurança vêm do DOMPurify, a biblioteca que as próprias equipas de segurança dos navegadores citam, e não de uma passagem escrita à mão sobre querySelectorAll. É usada através da sua API de hooks e pede-se-lhe o DOM intermédio em vez de uma cadeia acabada, que é o que torna possíveis o relatório de remoções e as exceções item a item. Trata do XSS por mutação, da confusão de espaços de nomes e dos truques de URL que um limpador ingénuo deixa passar.
Perguntas frequentes
QPorque é que não acontece nada quando colo?+
É de propósito. Colar ou abrir um ficheiro só carrega o HTML; o saneamento corre quando carrega em Sanear. Assim escolhe primeiro a política em vez de ver a ferramenta adivinhar, e um documento grande nunca é analisado a cada tecla premida.
QO que é que o relatório de remoções me permite mesmo fazer?+
Cada linha é uma decisão reversível. Carregar em Manter acrescenta essa única exceção e repete a passagem inteira — permitir de novo um <iframe> não deixa portanto passar também o seu atributo onload. O seu texto de entrada nunca é reescrito, e é por isso que desfazer e refazer continuam baratos.
QPôr as etiquetas em lista branca chega para a saída ser segura?+
Não, e esse é o erro da maioria dos limpadores que só olham para etiquetas. Uma etiqueta <a> de qualquer lista branca pode continuar a levar href="javascript:…", por isso aqui os atributos e os esquemas de URL são verificados em separado. Bloquear uma etiqueta deixando os seus atributos intactos não é sanear.
QQue esquemas de URL passam?+
Só os que assinalar. Todo o resto é descartado de href, src, srcset, action, formaction, poster, cite e xlink:href, incluindo os valores escondidos atrás de tabulações, mudanças de linha ou entidades HTML. data: fica limitado a imagens raster: uma URL de dados SVG executa o seu próprio script quando aberta diretamente, por isso nunca é permitida.
QA pré-visualização é segura?+
Sim. É desenhada num iframe com o atributo sandbox a valer a cadeia vazia, o que bloqueia scripts, formulários, janelas emergentes e navegação, mais uma política sem referenciador para que nenhuma imagem sobrevivente possa revelar de que página veio.
QO meu HTML é enviado para algum lado?+
Não. O saneador é JavaScript empacotado com esta página e corre no seu separador. Não há envio, nem chamada a uma API, nem pedido a um CDN — pode confirmar com o separador de rede aberto.
QQue tamanho de documento aguenta?+
A análise é aproximadamente linear, por isso alguns megabytes de marcação terminam bem abaixo do segundo num portátil normal; o tempo medido aparece depois de cada execução. O realce de sintaxe do painel de saída desliga-se acima de 200 KB, porque a esse tamanho colorir custa mais do que rende.