Skip to main content
Validación HTML

Valor incorrecto “http://www.w3.org/1999/html” para el atributo “xmlns” (solo se permite “http://www.w3.org/1999/xhtml” aquí).

Acerca de este problema HTML

El atributo xmlns declara el namespace XML para el documento. Cuando está presente en el elemento <html>, la especificación HTML requiere que su valor sea exactamente http://www.w3.org/1999/xhtml — no se permiten variaciones. La URL http://www.w3.org/1999/html no es un namespace reconocido y será rechazada por el validador. Este error casi siempre proviene de un error tipográfico: la “x” antes de “html” fue omitida accidentalmente.

Por qué esto importa

Aunque la mayoría de navegadores seguirán renderizando la página en modo HTML independientemente de un valor xmlns malformado, un namespace incorrecto puede causar problemas reales en ciertos contextos:

  • Procesamiento XHTML: Si el documento se sirve con un tipo de contenido XML (por ejemplo, application/xhtml+xml), un namespace inválido hará que los analizadores XML rechacen o malinterpreten el documento.
  • Cumplimiento de estándares: Los validadores y herramientas automatizadas marcan esto como un error, lo que puede afectar las auditorías de calidad, verificaciones de accesibilidad y pipelines CI/CD que exigen marcado válido.
  • Herramientas e interoperabilidad: Las herramientas basadas en XML, sistemas de gestión de contenidos y transformaciones XSLT dependen de namespaces correctos para funcionar adecuadamente.

Cómo solucionarlo

Tienes dos opciones dependiendo del tipo de documento:

  1. Si necesitas el atributo xmlns (por ejemplo, para documentos XHTML o poliglota): Cambia el valor de http://www.w3.org/1999/html a http://www.w3.org/1999/xhtml.
  2. Si estás escribiendo HTML5 estándar: Simplemente elimina el atributo xmlns. Es opcional en HTML5 y no tiene efecto cuando está presente con el valor correcto — así que omitirlo es el enfoque más limpio.

Ejemplos

Incorrecto — namespace mal escrito

El valor no tiene la “x” antes de “html”:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/html" lang="en">
  <head>
    <title>My Page</title>
  </head>
  <body>
    <p>Hello, world!</p>
  </body>
</html>

Corregido — namespace XHTML correcto

Añade la “x” que falta para que el valor sea xhtml:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
  <head>
    <title>My Page</title>
  </head>
  <body>
    <p>Hello, world!</p>
  </body>
</html>

Corregido — HTML5 estándar sin xmlns

Si no necesitas compatibilidad con XHTML, elimina el atributo por completo:

<!DOCTYPE html>
<html lang="en">
  <head>
    <title>My Page</title>
  </head>
  <body>
    <p>Hello, world!</p>
  </body>
</html>

Para la mayoría de sitios web modernos servidos como text/html, la tercera opción — omitir xmlns completamente — es el enfoque más simple y recomendado. Solo inclúyelo si tu documento también debe ser XHTML válido o será procesado por herramientas XML, y siempre asegúrate de que el valor sea exactamente http://www.w3.org/1999/xhtml.

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.