2011-02-01 10 views
21

これはおそらく愚かな質問であり、私自身は答えがありますが、何か間違っているかどうかを知りたいのです。私はウェブサイトを持っています、それをwww.mysite.comと呼んでみましょう。このサイト内にはいくつかのよくある質問がありますが、そのサイトを構築した人は、FAQページを「FAQs」という名前のサイトのディレクトリの下に保存しました。リンクはディレクトリに戻りませんか?

www.mysite.com/pages/en/faqs/faq-page1.html:FAQのページがで配置されることになる例として

pages/en/ディレクトリに注意してください。理想的には、すべてのページをwww.mysite.com/index.htmlなどの下に保存したいと思いますが、私はこれを変更することはできません。

とにかく私がこれらのよくある質問ページのいずれかにいるとき、私はホームページに戻るようにリンクしようとしますindex.htmlナビゲーションはページには行きません。私は上だときに、たとえば、:

www.mysite.com/pages/en/faqs/faq-page1.html

と私は(インデックスページが保存されているところである)のホーム・ページ

www.mysite.com/pages/en/index.htmlにリンクしようとNAVは動作しません。代わりにwww.mysite.com/pages/en/faqs/index.htmlに行きます。

私は "faq"ディレクトリにあるので、これが起こったと仮定していますが、リンクするときにルートディレクトリに戻るにはどうすればよいですか?リンクのコードは単に<a href="index.html">Home</a>です。私はもちろん、これを解決するフルリンクwww.mysite.com/pages/en/index.htmlを入れることができますが、これを回避する別の方法がありますか?このような長い投稿を申し訳ありません、私はこれより良い説明することができたかもしれませんが、私はできません:S

ありがとうございます。

答えて

35

あなたはあなたのルートからのリンクを指定することができます<a href="../index.html">Home</a>

代わりの相対ファイルパスを与える必要があります <a href="/pages/en/index.html">Home</a>

...を持つサイトでは、ファイルパスで特別な意味を持っている..は、1つ上のディレクトリに意味と.は、カレントディレクトリを意味します。絶対的および相対的:

ので<a href="index.html">Home</a>は、パスの2種類があり<a href="./index.html">Home</a>

+0

ありがとう:2つのオプションがあります。私はこれを試して、それは動作します。更新していただきありがとうございます! – zik

5

リンク内のディレクトリに移動するには、..を使用します。これは、「1つ上のディレクトリに行く」という意味なので、あなたのリンクは次のようになります。

<a href="../index.html">Home</a> 
+0

感謝を修正し、それはちょうど私が馬鹿されていた新しい:)あなたの両方に – zik

18

と同じです。これは基本的に、ハードディスク内のファイルとURL内のディレクトリで同じです。

絶対パスは先頭のスラッシュで始まります。彼らはいつも同じ場所、あなたがそれらを使用するどんなにを指す:

  • /pages/en/faqs/faq-page1.html

相対パスが残り(スラッシュで始まらないものすべて)です。彼らはを指し示す場所は、あなたが彼らに

  • index.htmlを使用している場所にを依存している:
    • /pages/en/faqs/index.html/pages/example.html
    • など
  • から呼び出された場合/pages/en/faqs/faq-page1.html
  • /pages/index.htmlから呼び出された場合
..

は、2人の特別なディレクトリ名があります

  • .は "カレントディレクトリ"
  • ..手段 "親ディレクトリ" を意味
あなたは相対パスを構築するためにそれらを使用することができ

  • ../index.html/pages/en/index.htmlを使用すると、用語に精通してたら/pages/en/faqs/faq-page1.html

から呼び出された場合/pages/en/faqs/faq-page1.html

  • ../../index.htmlある/pages/index.htmlから呼び出された場合、それが失敗し、どのようにそれを修正するだかを理解するのは簡単です。

    • 絶対パスを使用
    • あなたの相対パス
  • +0

    素敵で説明的な、ありがとう!そうでなければ私はマークアップできません... – zik