HTML básico - como definir o caminho relativo para a pasta atual?

86

Digamos que estou atualmente em: http://example.com/folder/page.html

É possível criar um link relativo nesta página que aponta para http://example.com/folder/sem especificar folderqualquer lugar? (E usando apenas HTML.)

ATUALIZAÇÃO: Como se viu, ./funciona apenas no modo doctype não estrito, enquanto .funciona em ambos os modos, então ainda é uma resposta melhor na minha opinião :) Obrigado a todos.

serg
fonte
Por que alguém criaria um caminho relativo para o diretório atual quando, por padrão, apenas o nome do próprio arquivo em href assume o diretório atual?
Mateus

Respostas:

94

Apenas o ponto está funcionando. O doctype faz a diferença, entretanto, às vezes, o ./ também funciona.

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

Para qualquer um que encontrou este tópico, abordar caminhos relativos sempre criou argumentos sobre o que é correto ou não.

Dependendo de onde você usa o caminho a ser endereçado, isso dependerá de como você endereça o caminho.

Geralmente:

.e ./fazer a mesma coisa, porém você não usaria .com um nome de arquivo. Caso contrário, você terá o navegador solicitando .filename.extum arquivo do servidor. O método adequado seria ./filename.ext.

../aborda o caminho um nível acima da pasta atual. Se você estivesse no caminho /cheese/crackers/yummy.htmle seu código de link solicitado ../butter/spread.htmlno documento yummy.html, você estaria endereçando o caminho /cheese/butter/spread.html, no que diz respeito ao servidor.

/sempre abordará a raiz do site.

Mark Giblin
fonte
12

Você pode usar

 ../

para significar um nível acima. Se você tiver uma página chamada page2.html na mesma pasta que page.html , o caminho relativo será:

 page2.html.

Se você tiver page2.html no mesmo nível da pasta, o caminho será:

  ../page2.html
Vincent Ramdhanie
fonte
Isso respondeu à pergunta que vim procurar aqui, como encontrar uma página na mesma pasta.
jvangeld
10
<html>
    <head>
        <title>Page</title>
    </head>
    <body>
       <a href="./">Folder directory</a> 
    </body>
</html>
Bullines
fonte
1
Não. Isso sobe um nível. Eu preciso da pasta atual.
serg
3
Não, não é :) O único ponto é a resposta.
serg
1
Eu testei no IE e no Firefox e "." era o mesmo que "./" HTML 4.01 Transitional. É um problema de tipo de documento?
MrChrister
Hm, pode ser isso. Estou usando estrito, deveria ter mencionado isso provavelmente.
serg
3

Ambos os itens abaixo parecem funcionar

./

.

bdukes
fonte
1
Ainda não está certo, isso sobe um nível, o que não é o que ele está perguntando ... Ver a resposta dos
Bullines
4
./ subir um nível parece ser um absurdo para mim. Por que ele faz isso?
Johannes Schaub - litb
2
<a href="./">Folder</a>
Steve Tranby
fonte
2

A resposta principal não é clara o suficiente. aqui está o que funcionou para mim: O formato correto deve ser semelhante a este se você quiser apontar para o arquivo real:

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

Isso fará com que você aponte para esse arquivo dentro da mesma pasta se você estiver na página http://example.com/folder/index.html

JayPex
fonte