HTML básico: ¿cómo establecer la ruta relativa a la carpeta actual?


86

Digamos que estoy actualmente en: http://example.com/folder/page.html

¿Es posible crear un enlace relativo en esta página que apunte http://example.com/folder/sin especificar folderningún lugar? (Y usando solo HTML).

ACTUALIZACIÓN: Resultó que ./funciona solo en el modo doctype no estricto, mientras que .funciona en ambos modos, por lo que sigue siendo una mejor respuesta en mi opinión :) Gracias a todos.


¿Por qué alguien crearía una ruta relativa al directorio actual cuando por defecto solo el nombre del archivo en href asume el directorio actual?
Mateo

Respuestas:


94

Solo dot está funcionando. Sin embargo, el tipo de documento marca la diferencia, ya que a veces el ./ también está bien.

<a href=".">Link to this folder</a>

38

Para cualquiera que haya encontrado este hilo, abordar rutas relativas siempre ha creado argumentos sobre lo que es correcto o no.

Dependiendo de dónde use la ruta a direccionar, dependerá de cómo la direccione.

Generalmente :

.y ./haga lo mismo, sin embargo, no lo usaría .con un nombre de archivo. De lo contrario, el navegador lo solicitará .filename.extcomo un archivo del servidor. El método adecuado sería ./filename.ext.

../aborda la ruta hasta un nivel desde la carpeta actual. Si estuvieras en la ruta /cheese/crackers/yummy.htmly tu código de enlace se solicite ../butter/spread.htmlen el documento yummy.html, entonces estarías abordando la ruta /cheese/butter/spread.html, en lo que respecta al servidor.

/siempre se dirigirá a la raíz del sitio.


12

Puedes usar

 ../

para significar hasta un nivel. Si tiene una página llamada page2.html en la misma carpeta que page.html , la ruta relativa es:

 page2.html.

Si tiene page2.html al mismo nivel que la carpeta, la ruta es:

  ../page2.html

Eso respondió a la pregunta que vine a buscar aquí, cómo encontrar una página en la misma carpeta.
jvangeld

10
<html>
    <head>
        <title>Page</title>
    </head>
    <body>
       <a href="./">Folder directory</a> 
    </body>
</html>

1
No Esto sube un nivel. Necesito carpeta actual.
serg

3
No, no lo es :) El punto único es la respuesta.
serg

1
Lo pruebo tanto en IE como en Firefox y "." era lo mismo que "./" HTML 4.01 Transitional. ¿Es un problema de tipo de documento?
MrChrister

Hm, eso podría ser todo. Estoy usando estricto, probablemente debería haber mencionado eso.
serg

3

Ambos de los siguientes parecen funcionar

./

.


1
Todavía no está bien, esto sube un nivel, que no es lo que está preguntando ... Vea la respuesta de
Bullines

4
./ Subir un nivel me parece una tontería. ¿Porque hace eso?
Johannes Schaub - litb


2

La respuesta principal no es lo suficientemente clara. esto es lo que funcionó para mí: El formato correcto debería verse así si desea apuntar al archivo real:

 <a href="./page.html">

Esto hará que apunte a ese archivo dentro de la misma carpeta si está en la página http://example.com/folder/index.html

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.