2017-02-05 13 views
0

ドメイン名を変更する可能性があるため絶対パスを使用したくないです。この場所に相対パスでリンクするにはどうすればよいですか?相対パスによるナビゲーション

https://[My Website Name].com/dir1/dir2/dir3/page.html 

これは悪い考えですか?

更新:言い換えれば、私のウェブサイトのホームページ(または他のページ)を相対パスで読み込むにはどうすればいいですか?私はすでにリソースへのアクセスに相対パスを使用していますが、特にナビゲーションについて知りたいと思っています。

+0

私はすべての画像とオーディオに相対パスを使用しますが、この質問は特にナビゲーションに関するものであり、まったく異なります。 – Lumo5

+0

* "すべての画像とオーディオに相対パスを使用しますが、この質問は特にナビゲーションに関するものです。全く違う" * **いいえ、そうではありません。ハイパーリンクによるナビゲーションは、画像やその他のリソースの参照とまったく同じように機能します。だから私たちは "リソース"という言葉を使用しています。リソースとは、ブラウザが読み込まなければならない任意のタイプの外部要素です。** –

答えて

0

最初に同じドメイン内にあるリソースにリンクするときは絶対パスを使用しないでください。もちろん、ドメイン名を変更すると役立ちますが、もっと重要なのは、絶対パスを使用すると、ユーザーエージェントはドメインのIPアドレスを再解決する必要があります。これは時間がかかり、あなたがしなければ必要である。

サイト外のリソースを参照する場合は、絶対パス(http://.....)を使用する必要があります。

相対パスを使用するには、現在のファイルがディレクトリ構造内にある場所を知り、宛先リソースがどこにあるかを(相対的に)理解する必要があります。先場合myFile.html

: - ちょうどすなわち、先のリソースの名前を入れて

先のリソースはパスが必要とされていない、ソースファイルと同じディレクトリにある場合:ここではあなたが続くことができるいくつかのルールですリソースがasソースファイルのサブディレクトリにある場合は、ソースファイルと同じフォルダにあるディレクトリ名でパスを開始し、そこからパスを入力してください:images/myimage.png

宛先リソースがソースより上位のディレクトリには、../を使用して、ソースの親ディレクトリまでナビゲートします。たとえば、現在のファイルの場所よりも1つ上のディレクトリにファイルを取得するには、../myFile.html。複数のディレクトリに移動する必要がある場合は、倍数を組み合わせることができます。つまり、../../myFile.htmlは2つのディレクトリを検索してファイルを検索します。

ソースが全体のサイト構造のかなり遠い場合は、サイトのルートから開始し、いくつかのレベルに上るのではなく、下に進む方が簡単かもしれません。この場合、サイトのルートから開始する必要があることを示すために、パスを/で開始します。たとえば、/index.htmlは、サイトのルートディレクトリにあるindex.htmlファイルに移動することを意味します。

+0

応答をありがとう。私はあなたに同意しますが、私は特にナビゲーションについて知りたいと思っていました。私はすでにリソースに相対パスを使用していますが、私はナビゲーションについて知りたいです。たとえば、別のページからホームページを読み込むにはどうすればよいですか?最も簡単な方法は絶対パスですが、どうすれば相対パスで同じ結果を達成できますか? – Lumo5

+0

@ Lumo5私の答えが話すすべてのことがナビゲーションに当てはまるので、あなたがしようとしていることを明確にしてください。別のページからホームページに移動するには、リンクは 'Home 'となります。相対パスは画像のためだけではありません。それらは、ブラウザがロードする必要のある**すべての**リソースに適用されます。 –

+0

大丈夫です。誤解をおかけして、ご回答いただきありがとうございます。 – Lumo5