Acerca de este problema HTML
Una URL está compuesta por varias partes: esquema, host (dominio), ruta, consulta y fragmento. Aunque algunas de estas partes permiten ciertos caracteres especiales (a menudo codificados en porcentaje), la parte del host tiene reglas estrictas. Los nombres de dominio siguen las convenciones de nomenclatura DNS, que solo permiten letras ASCII (a-z, A-Z), dígitos (0-9), guiones (-) y puntos (.) como separadores de etiquetas. Los espacios están categóricamente prohibidos.
Este error de validación típicamente ocurre en dos escenarios:
-
Un espacio literal aparece en el dominio, ej.,
http://mi dominio.com. Esto es a menudo un error tipográfico o un error de copiar y pegar. -
Un espacio codificado en porcentaje (
%20) aparece en el dominio, ej.,http://mi%20dominio.com. Aunque%20es válido en rutas de URL y cadenas de consulta, no es válido en la parte del host. La codificación de porcentaje no hace que un espacio sea legal en un nombre de dominio — sigue resolviéndose a un carácter de espacio, que DNS no puede manejar.
Por qué esto es un problema
- Enlaces rotos: Los navegadores no pueden resolver un dominio con espacios a un servidor real. Los usuarios que hagan clic en el enlace obtendrán un error o no irán a ninguna parte.
- Accesibilidad: Los lectores de pantalla y tecnologías asistivas pueden anunciar el enlace, pero los usuarios encontrarán un callejón sin salida, creando una experiencia frustrante.
- Cumplimiento de estándares: El Estándar URL de WHATWG prohíbe explícitamente los espacios en el componente host. El validador W3C marca esto para ayudarte a detectar lo que es casi seguramente un error.
- Impacto SEO: Los rastreadores de motores de búsqueda tratarán la URL como inválida y no la seguirán ni indexarán.
Cómo solucionarlo
- Verifica errores tipográficos: La solución más común es corregir el dominio al nombre de dominio real y válido que tenías intención de usar.
-
Reemplaza espacios con guiones: Si el dominio previsto genuinamente tiene un separador de palabras, la convención estándar es usar guiones (ej.,
mi-dominio.com). -
Elimina espacios completamente: A veces los espacios se introducen accidentalmente y simplemente necesitan ser eliminados (ej.,
midominio.com). - Verifica la ruta vs. el host: Si el espacio pertenece a una ruta de archivo o parámetro de consulta en lugar del dominio, asegúrate de que esté en la parte correcta de la URL y codificado apropiadamente ahí.
Ejemplos
❌ Espacio literal en el dominio
<a href="http://mi dominio.com/pagina">Visitar sitio</a>
❌ Espacio codificado en porcentaje en el dominio
<a href="http://mi%20dominio.com/pagina">Visitar sitio</a>
✅ Solucionado: usar un guión en el dominio
<a href="http://mi-dominio.com/pagina">Visitar sitio</a>
✅ Solucionado: eliminar el espacio completamente
<a href="http://midominio.com/pagina">Visitar sitio</a>
✅ Los espacios están bien en la ruta (codificados en porcentaje)
Nota que %20 es válido en la parte de la ruta de una URL — simplemente no en el dominio:
<a href="http://midominio.com/mi%20pagina">Visitar página</a>
Error común: espacio antes o después del dominio
A veces el espacio es difícil de detectar porque está al principio o al final de la URL, o entre el esquema y el dominio:
<!-- ❌ Espacio al final en el dominio -->
<a href="http://midominio.com /pagina">Visitar sitio</a>
<!-- ✅ Solucionado -->
<a href="http://midominio.com/pagina">Visitar sitio</a>
Si tus URLs se generan dinámicamente (ej., desde un CMS o base de datos), asegúrate de recortar los espacios en blanco de la parte del dominio antes de construir la URL completa. Una forma rápida de detectar estos problemas durante el desarrollo es validar tu HTML regularmente con el Servicio de Validación de Marcado W3C.
Encuentra problemas como este automáticamente
Rocket Validator escanea miles de páginas en segundos, detectando problemas de HTML en todo tu sitio web.