Skip to main content
Validación HTML

Valor incorrecto “text/html; charset=windows-1252” para el atributo “content” en el elemento “meta”: “charset=” debe ir seguido de “utf-8”.

Acerca de este problema HTML

La especificación HTML establece que los documentos deben estar codificados en UTF-8. Este requisito existe porque UTF-8 es la codificación de caracteres universal que soporta prácticamente todos los caracteres de todos los sistemas de escritura del mundo. Las codificaciones más antiguas como windows-1252, iso-8859-1 o shift_jis solo soportan un subconjunto limitado de caracteres y pueden hacer que el texto se muestre incorrectamente — mostrando caracteres ilegibles o signos de interrogación — especialmente para usuarios en diferentes configuraciones regionales o cuando el contenido incluye símbolos especiales, letras acentuadas o emojis.

Cuando el validador encuentra charset=windows-1252 en tu etiqueta <meta>, marca esto como un error porque el estándar HTML vigente (WHATWG) establece explícitamente que la declaración de codificación de caracteres debe especificar utf-8 como la codificación. Esto no es solo una preferencia estilística — los navegadores y otras herramientas dependen de esta declaración para interpretar correctamente los bytes en tu documento. Usar una codificación que no sea UTF-8 puede llevar a vulnerabilidades de seguridad (como ataques XSS basados en codificación) y problemas de accesibilidad cuando las tecnologías de asistencia malinterpretan los caracteres.

Para solucionar este problema, sigue estos dos pasos:

  1. Actualiza la etiqueta <meta> para declarar utf-8 como el charset.
  2. Vuelve a guardar tu archivo con codificación UTF-8. La mayoría de los editores de código modernos (VS Code, Sublime Text, etc.) te permiten elegir la codificación al guardar — busca una opción como “Guardar con codificación” o revisa la barra de estado para ver la codificación actual. Si tu archivo estaba originalmente en windows-1252, simplemente cambiar la etiqueta <meta> sin recodificar el archivo podría hacer que los caracteres especiales existentes se muestren incorrectamente.

La especificación HTML también recomienda usar la forma más corta <meta charset="utf-8"> en lugar de la directiva pragma más larga <meta http-equiv="Content-Type" ...>, ya que es más simple y logra el mismo resultado. Cualquiera de las dos formas es válida, pero la declaración del charset debe aparecer dentro de los primeros 1024 bytes del documento.

Ejemplos

Incorrecto: Usar charset windows-1252

<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

Esto provoca el error del validador porque el charset no es utf-8.

Correcto: Usar la declaración corta de charset (recomendado)

<meta charset="utf-8">

Correcto: Usar la directiva pragma http-equiv con utf-8

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

Ejemplo de documento completo

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>My Page</title>
  </head>
  <body>
    <p>Hello, world!</p>
  </body>
</html>

Ten en cuenta que la etiqueta <meta charset="utf-8"> debe ser el primer elemento dentro de <head>, antes que cualquier otro elemento (incluyendo <title>), para que el navegador conozca la codificación antes de empezar a procesar el resto del documento.

Encuentra problemas como este automáticamente

Rocket Validator escanea miles de páginas en segundos, detectando problemas de HTML en todo tu sitio web.

Ayúdanos a mejorar nuestras guías

¿Te ha sido útil esta guía?

¿Listo para validar tus sitios?
Inicia tu prueba gratuita hoy.