基本的なHTML-現在のフォルダへの相対パスを設定する方法は?


86

私が現在いるとしましょう: http://example.com/folder/page.html

このページに、どこhttp://example.com/folder/も指定せずに指す相対リンクを作成することはできfolderますか?(そしてHTMLのみを使用します。)

更新: 非厳密なDoctypeモードでのみ機能し、両方のモードで機能することが判明したため、私の意見ではそれでもより良い答えです:)皆さんに感謝します。./.


デフォルトでは、href内のファイル自体の名前だけが現在のディレクトリを想定しているのに、なぜ誰かが現在のディレクトリへの相対パスを作成するのでしょうか。
マシュー

回答:


94

ドットだけが機能しています。ただし、。/でも問題ない場合があるため、Doctypeによって違いが生じます。

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

38

このスレッドを見つけた人にとって、相対パスに対処することで、何が正しいかどうかについて常に議論が生まれてきました。

アドレス指定するパスを使用する場所に応じて、パスのアドレス指定方法によって異なります。

一般的に:

.そして./、あなたが使用することはありませんが、同じことを行う.ファイル名で。それ以外の場合は、ブラウザ.filename.extがサーバーからファイルとして要求します。適切な方法はです./filename.ext

../現在のフォルダから1レベル上のパスをアドレス指定します。パス内/cheese/crackers/yummy.htmlにいて、リンクコードが../butter/spread.htmlドキュメントyummy.htmlで要求されている場合/cheese/butter/spread.html、サーバーに関する限り、パスをアドレス指定することになります。

/常にサイトのルートに対応します。


12

使用できます

 ../

1レベル上を意味します。あなたはというページがある場合はpage2.htmlを同じフォルダにpage.html、相対パスは次のとおりです。

 page2.html.

フォルダと同じレベルにpage2.htmlがある場合、パスは次のとおりです。

  ../page2.html

それは私が探しに来た質問、同じフォルダでページを見つける方法に答えました。
jvangeld 2012年

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

1
いいえ。これは1レベル上になります。現在のフォルダが必要です。
serg 2008年

3
いいえ、そうではありません:)単一のドットが答えです。
serg 2008年

1
IEとFirefoxの両方と「」でテストします。「./」HTML4.01Transitionalと同じでした。ドキュメントタイプの問題ですか?
MrChrister 2008年

うーん、それはそれかもしれません。私はstrictを使用していますが、おそらくそれについて言及する必要があります。
serg 2008年

3

以下の両方が機能しているようです

./


1
それでも正しくありませんが、これは1レベル上になりますが、これは彼が求めているものではありません... Bullinesの回答を参照してください
da5id 2008年

4
./1つ上のレベルに上がることは私にはナンセンスのようです。なぜそれをするのですか?
Johannes Schaub-litb 2008年


2

一番上の答えは十分に明確ではありません。これが私のために働いたものです:実際のファイルをポイントしたい場合、正しいフォーマットは次のようになります:

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

これにより、ページを表示している場合、同じフォルダ内のそのファイルを指すようになります http://example.com/folder/index.html

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.