Formatador HTML

Organize HTML bagunçado em uma indentação legível — ou minifique tudo em uma linha — inteiramente no seu navegador.

Como usar

  1. Cole ou digite HTML. Ele é formatado (ou minificado) enquanto você digita — sem botão para clicar.
  2. Alterne entre Formatar / Minificar; escolha 2 ou 4 espaços. O controle de indentação fica desativado no modo Minificar.
  3. Elementos de bloco são indentados um nível por profundidade, um por linha. O conteúdo inline (texto misturado com <a> ou <b>) fica exatamente como escrito.
  4. Elementos vazios (<br>, <img>, <input>…) não precisam de tag de fechamento e são preservados literalmente, incluindo um /> opcional.
  5. Elementos de texto bruto (<script>, <style>, <textarea>, <title>, <pre>) são copiados caractere por caractere; nada dentro deles é analisado ou reformatado.

Exemplo

Entrada

<!DOCTYPE html><html><head><meta charset="utf-8"><title>Demonstração</title></head><body><div class="cartao"><h1>Olá</h1><p>Oi <b>você</b></p><ul><li>um</li><li>dois</li></ul></div><script>const x=1;</script></body></html>

Saída

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Demonstração</title>
  </head>
  <body>
    <div class="cartao">
      <h1>Olá</h1>
      <p>Oi <b>você</b></p>
      <ul>
        <li>um</li>
        <li>dois</li>
      </ul>
    </div>
    <script>const x=1;</script>
  </body>
</html>

Conteúdo inline e o interior de <script>/<style> são mantidos literalmente; <meta> é um elemento vazio, preservado como escrito.

Limitações

  • Apenas estrutura: pareamento de tags, elementos vazios, fechamentos implícitos comuns (li/td/tr/dt/dd/option/p/head) e aninhamento. Sem validação DTD/schema.
  • JavaScript e CSS embutidos não são formatados — o conteúdo de <script>/<style> fica como está. (Use o Formatador de código para isso.)
  • Nem todas as tags de fechamento opcionais do HTML5 são inferidas; aninhamento realmente malformado é reportado com linha e coluna.
  • Conteúdo inline/misto não é reindentado de propósito. O conteúdo de <pre>/<textarea>/<title> é preservado literalmente.
  • Sem upload de arquivo, sem parâmetros de URL, sem histórico, sem conta. A entrada nunca sai do seu navegador.

Outros formatadores e ferramentas de texto desta caixa.