Herramientas para Desarrolladores

Codificar HTML

Escapa caracteres convirtiéndolos en entidades HTML seguras.

Valora esta herramienta

Cómo usar Codificar HTML

  1. Pega tu texto o HTML.
  2. Copia las entidades escapadas.

Acerca de Codificar HTML

Escapar es lo que evita que un texto se interprete como marcado. Sustituye un signo de menor que por < y el navegador dibuja el carácter en lugar de abrir una etiqueta, y por eso escapar la entrada no confiable antes de que llegue a una página es la base para prevenir ataques de cross-site scripting. Esta herramienta convierte los cinco caracteres que importan: el ampersand, los corchetes angulares, la comilla doble y el apóstrofo. Todo lo demás, letras acentuadas y emojis incluidos, se deja tal cual; UTF-8 se encarga de eso sin necesidad de entidades.

El ampersand hay que tratarlo primero, porque inicia toda entidad. Si escaparas primero los corchetes angulares, luego escaparías los ampersands que acabas de introducir, convirtiendo < en <. Esta herramienta hace una sola pasada, así que cada carácter se sustituye una única vez. Las entidades con nombre y las numéricas son equivalentes para un analizador: la forma numérica simplemente escribe el punto de código explícitamente.

Deja claro para qué sirve esto: inspeccionar y preparar texto, no hacer nada seguro por sí solo. Escapar depende del contexto: una salida segura en el cuerpo de una página HTML no es automáticamente segura dentro de un bloque de script, un atributo, una URL o un valor CSS, y cada uno necesita sus propias reglas. Haz el escapado en tu motor de plantillas, donde el contexto es conocido. Revierte el proceso con el decodificador HTML. Todo se ejecuta en tu navegador.

Preguntas frecuentes

¿Qué caracteres escapa?

Exactamente cinco: & < > " y '. Son los que pueden cambiar cómo un analizador lee tu texto. Los caracteres acentuados, los símbolos y los emojis se dejan intactos, porque una página en UTF-8 los muestra bien y convertirlos en entidades solo hace más grande la salida.

¿Escapar hace que mi sitio sea seguro frente a XSS?

No, y es importante no creer lo contrario. Escapar para el cuerpo de una página HTML no es suficiente dentro de un bloque de script, un atributo de manejador de eventos, una URL o una hoja de estilos: cada contexto tiene reglas distintas. Usa el escapado consciente del contexto de tu framework; esta página sirve para inspeccionar y preparar texto.

¿Por qué hay que escapar primero el ampersand?

Porque & inicia toda entidad. Si primero escaparas < como &lt; y después escaparas los ampersands, alcanzarías el & que acabas de crear y terminarías con &amp;lt;, una basura visible. Una sola pasada, como la que se usa aquí, evita por completo el problema del orden.

¿Por qué &#39; en lugar de &apos;?

Ambos significan un apóstrofo, pero &#39; es una referencia numérica que resuelve cualquier analizador HTML, mientras que la entidad con nombre &apos; viene de XML y los analizadores HTML antiguos no la reconocen. Por eso los escapadores suelen preferir la forma numérica.

¿Puedo pegar HTML real en la herramienta?

Sí, es un uso habitual. Pega el marcado y obtendrás de vuelta el código fuente escapado, listo para mostrarse como código en una página en lugar de ser interpretado como elementos.