Skip to main content
Validación HTML

Valor incorrecto “X” para el atributo “href” en el elemento “link”: Carácter ilegal en el segmento de ruta: “X” no está permitido.

Acerca de este problema HTML

Las URLs siguen reglas de sintaxis estrictas definidas por RFC 3986. Dentro del segmento de ruta de una URL, solo se permite un conjunto específico de caracteres: caracteres no reservados (letras, dígitos, -, ., _, ~), caracteres codificados en porcentaje (como %20), y ciertos sub-delimitadores reservados. Cuando el validador de W3C encuentra un carácter fuera de este conjunto permitido en el atributo href de un elemento <link>, marca el error.

Las causas comunes de este problema incluyen:

  • Marcadores de plantilla dejados en la URL, como {{variable}} o ${path}, donde las llaves y signos de dólar no han sido resueltos o codificados.
  • Espacios en rutas de archivos, como href="styles/my file.css" en lugar de usar %20 o renombrar el archivo.
  • Errores de copiar y pegar que introducen caracteres Unicode invisibles o especiales.
  • Barras invertidas (\) usadas en lugar de barras diagonales (/), que es un error común en sistemas Windows.
  • Caracteres similares a consultas sin codificar colocados en la porción de ruta de la URL.

Esto importa porque los navegadores pueden interpretar URLs malformadas de manera inconsistente. Una URL que funciona en un navegador podría fallar en otro. Además, las URLs inválidas pueden romper la carga de recursos, causar problemas de accesibilidad cuando las tecnologías de asistencia intentan procesar el documento, y llevar a comportamientos inesperados con proxies, CDNs u otros intermediarios que analizan estrictamente las URLs.

Para solucionar el problema, inspecciona el valor href reportado en el error y:

  1. Elimina el carácter ilegal si fue incluido por error.
  2. Codifica el carácter en porcentaje si debe ser parte de la URL (ej., un espacio se convierte en %20, una barra vertical | se convierte en %7C).
  3. Renombra el archivo o directorio referenciado para evitar caracteres especiales por completo (el enfoque más simple y confiable).

Ejemplos

Incorrecto: Espacio en la ruta

<link rel="stylesheet" href="styles/my styles.css">

El carácter de espacio no está permitido en un segmento de ruta de URL. El validador marcará esto como un carácter ilegal.

Corregido: Codificar el espacio en porcentaje

<link rel="stylesheet" href="styles/my%20styles.css">

Mejor solución: Renombrar el archivo para evitar espacios

<link rel="stylesheet" href="styles/my-styles.css">

Incorrecto: Marcador de plantilla dejado sin resolver

<link rel="stylesheet" href="styles/{{theme}}/main.css">

Las llaves { y } no son válidas en segmentos de ruta de URL. Esto comúnmente ocurre con sintaxis de plantillas del lado del servidor o cliente que no fue procesada antes de que se sirviera el HTML.

Corregido: Usar una ruta resuelta válida

<link rel="stylesheet" href="styles/dark/main.css">

Incorrecto: Barra invertida usada como separador de ruta

<link rel="stylesheet" href="styles\main.css">

Las barras invertidas no son caracteres válidos en URLs. Las URLs siempre usan barras diagonales.

Corregido: Usar barras diagonales

<link rel="stylesheet" href="styles/main.css">

Incorrecto: Carácter de barra vertical en la URL

<link rel="stylesheet" href="styles/font|icon.css">

Corregido: Codificar la barra vertical en porcentaje

<link rel="stylesheet" href="styles/font%7Cicon.css">

Ejemplo completo de documento válido

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>My Webpage</title>
    <link rel="stylesheet" href="styles/main.css">
    <link rel="icon" href="images/favicon.ico">
  </head>
  <body>
    <h1>Welcome to my webpage!</h1>
    <p>Here is some content.</p>
  </body>
</html>

Cuando tengas dudas, ejecuta tu URL a través de un codificador o validador de URL por separado para confirmar que todos los caracteres son legales. Como buena práctica general, adhiérete a letras minúsculas, dígitos, guiones y barras diagonales en los nombres de tus archivos y directorios—esto evita problemas de codificación por completo y hace que tus URLs sean limpias y predecibles.

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.