- 締切済み
相対リンクが出来ません
□くだもの ├□ りんご │└◇ 1.html │ └□ バナナ └◇ A.html (□はフォルダ、◇はファイルです。) 1.htmlからA.htmlへのリンクを作成するには <a href="くだもの/バナナ/A.html">ジャンプ</a> と1.htmlに書けばいいと思うのですが、なぜかジャンプする場所が くだもの/りんご/くだもの/バナナ/A.html として検索してしまうので正しくリンクできません。 どうやら1に書いたリンクは"りんご"の中にあると言う事になっています。 どうすれば1にAのリンクを作成する事ができるのでしょうか。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- t_freak
- ベストアンサー率70% (12/17)
もう一つのやり方を。 「くだもの」ディレクトリがルートディレクトリ直下に置かれているものと仮定して <a href="/くだもの/バナナ/A.html">ジャンプ</a> と、URIの先頭にスラッシュを書くと、ルートディレクトリからくだもの→バナナ→A.htmlとたどってファイルを探すという動作になります。
<ご参考> aaa.html bbb/ccc.html bbb/eee/fff.html ggg/hhh.html fff.html内でaaa.htmlへのリンクは <a href"../../aaahtml">ちょめ</a> fff.html内でhhh.htmlへのリンクは <a href"../../ggg/hhh.html">ちょめ</a> というようにすればいいのでは?
- pasocom
- ベストアンサー率41% (3584/8637)
そもそも「相対パス」とはそのようなものです。 つまり、いきなり「くだもの/」と書いた場合は、あくまでも現在のフォルダ(例でいえば「りんご」フォルダ)を起点として見たフォルダを示してしまうのです。 相対パス指定では自分の現在のフォルダから見て上のフォルダを指定するには「../」を使います。「りんご」フォルダから見て「くだもの」フォルダが、これに当たります。で、「バナナ」フォルダはこの「上のフォルダ」内のにあるので「../バナナ」と記述します。 結論。1.htmlからA.htmlへのリンクを作成するには 「../バナナ/A.html」。 ちなみに直上のフォルダではなく、そのまた上のフォルダの場合は「.../」となります。
- yumitsuki
- ベストアンサー率52% (167/321)
相対リンクの記載方法では、そのページ(ここでは1.html)が入っているフォルダ(ここではりんごフォルダ)を起点に考えるのですが、親フォルダ(ここではくだものフォルダ)を指定するにはその名前ではなく「../」を用います。 したがって、りんごフォルダ内の1.htmlから、バナナフォルダ内のA.htmlへのリンクを、相対リンクとして指定するには、 <a href="../バナナ/A.html">ジャンプ</a> などと記述します。
お礼
../を使うのでしたか!書き直したらできました。ありがとうございました
お礼
「../」の存在を知らなかったのが問題ですね。 .../というのもあるのですね。ありがとうございます。