Entidades HTML

Codifica <, >, & e aspas para HTML, ou devolve as entidades para caracteres.

Texto que precisa sobreviver dentro do HTML

Se uma cadeia pode conter < ou & e você a solta no HTML, o navegador trata como marcação. Codificar transforma esses caracteres em entidades. Decodificar devolve as entidades a caracteres quando você lê o fonte. Não é o mesmo que escapar JSON, e não remove tags: reescreve caracteres.

Como usar

  1. Cole o texto ou a cadeia de entidades.
  2. Escolha Escapar ou Desescapar. Codificar sempre escapa &, <, > e os dois tipos de aspas.
  3. Deixe «Codificar também o que não for ASCII» quando quiser 中文 e acentos como &#xHHHH;. Desligue quando a página é UTF-8 e só os caracteres de marcação devem mudar.
  4. A decodificação aceita entidades decimais como &#20013;, hexadecimais como &#x4E2D;, e uma lista curta de nomes: amp, lt, gt, quot, apos, nbsp, copy, reg, trade, mdash, ndash, hellip, laquo, raquo, bull, middot, euro, pound, yen, cent, sect, para, deg, plusmn, times, divide, micro. Nome fora da lista permanece.

O que esperar

Codificar não envolve o resultado numa tag e não acrescenta doctype. Um & que já abre uma entidade é escapado de novo se você codificar duas vezes, e surge &amp;. Decodificar uma vez tira uma camada. Nomes fora dessa lista, inclusive muitos do HTML5, ficam como você colou. Entidade numérica que não é um ponto de código válido permanece texto.

Onde entra

  • Colocar uma cadeia de usuário no HTML sem deixar virar tag.
  • Ler um feed ou uma página antiga em que o chinês foi guardado como entidade numérica.
  • Ver o que um modelo vai mostrar antes de renderizar.

Perguntas

Por que &euro; ficou como texto?

Se você estava codificando, o próprio & foi escapado e você vê o fonte da entidade. Mude para decodificar para um nome conhecido virar o caractere.

Eu precisava de todos os nomes do HTML5.

Esta página cobre os nomes que aparecem em texto comum, mais qualquer entidade numérica. Nome desconhecido fica visível, em vez de sumir por causa de um erro de digitação.