Skip to main content
Validación HTML

Valor incorrecto “X” para el atributo “href” en el elemento “a”: Carácter ilegal en los datos del esquema: “<” no está permitido.

Acerca de este problema HTML

Un carácter < en el valor de un atributo href no está permitido porque es un carácter reservado en las URL y debe codificarse como porcentaje.

El atributo href en un elemento <a> debe contener una URL válida o un fragmento de URL. Los caracteres como <, >, {, } y otros no están permitidos directamente en las URL según el RFC 3986. El carácter < es especialmente problemático porque los navegadores y analizadores lo interpretan como el inicio de una etiqueta HTML, lo que puede romper tu marcado e introducir riesgos de seguridad como vulnerabilidades XSS.

Este error aparece comúnmente cuando la sintaxis de plantilla (por ejemplo, {{variable}}), entrada de usuario sin escapar o URL mal formadas terminan dentro de un valor href. Si realmente necesitas un < en una URL, debe codificarse como porcentaje como %3C. De manera similar, > debe codificarse como %3E.

Ejemplo con el problema

<a href="https://example.com/search?q=<value>">Search</a>

Cómo solucionarlo

Codifica como porcentaje los caracteres especiales en la URL:

<a href="https://example.com/search?q=%3Cvalue%3E">Search</a>

Si estás generando URL dinámicamente en el lado del servidor, usa la función de codificación de URL integrada de tu lenguaje (por ejemplo, encodeURIComponent() en JavaScript, urlencode() en PHP) para asegurar que todos los caracteres especiales estén correctamente escapados antes de insertarlos en los atributos href.

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.