■絶対パス・相対パスについて
HREF属性においてどのようにしてリンク先を指定するかについて説明します。リンク先のURLを完全に指定するには、プロトコル名、サーバ名およびパス名も含めたファイル名を指定しなくてはなりません。その指定方法には「相対パスによる指定」と「絶対パスによる指定」の2種類あります。「相対パスによる指定」は、現在の文書の位置を基準としたファイルの相対的な位置を指定する事です。 index.htmlのようにファイル名のみを指定していると、相対パスを使っていることになります。(相対パスは、URLのhttp://などを省略したURLと考えられます)。
この場合ブラウザは、現在の文書が入っているディレクトリの中でファイルを探します。そのディレクトリの中に指定されたファイルがなければ、ファイルを見つけることはできません。以下に相対パスを使った指定の方法とその解釈についての例をあげます。
| パス名 | 意味 |
|---|---|
| HREF="test.htm" | test.htmが現在のドキュメントと同じディレクトリ内に存在する |
| HREF="abc/test.htm" | 現在のドキュメントと同じディレクトリにabcというディレクトリがあり、そのabcというディレクトリにtest.htmが存在する |
| HREF="../abc/test.htm" | 現在のドキュメントの一つ上のディレクトリにabcというディレクトリがあり、そのabcというディレクトリにtest.htmが存在する |
| HREF="../../test.htm" | 現在のドキュメントの二つ上のディレクトリにtest.htmが存在する |
「絶対パス」は、最上位レベルのディレクトリから、ファイルの位置を指定するものです。完全なURLを指定するには、絶対パスを使います。すなわち、プロトコル名(Webページであればhttp:)から始まり、//www.を書き、その後ろにサーバ名、そしてスラッシュ(/)ではじまる絶対パス指定のファイル名が続きます(例えば、http://www.yahoo.co.jp/index.htmlのようになります)。
それぞれのディレクトリは、/で区切ります。URLを間違えると、ファイルを見つけることはできません。ディレクトリの名前に変更があれば、文書のなかに書かれているパスも変更する必要があります。
相対パスと絶対パスのどちらを用いるか
自分で作成したHTMLドキュメント同士をリンクさせるときには「相対パス」を利用して指定して下さい。というのは、絶対パスで指定してしまうと、あるディレクトリの名前を変更したりドキュメントを置いているサーバを変えたりした場合に全てのリンクのHREF属性を書き直さなくてはならないからです。
絶対パスで指定した方が簡単ではあるのですが、自分で作成したドキュメント同士でリンクを作成する際には相対パスを用いた方がのちのち自分のサイトを管理する上で楽になります。
また自分のサーバ以外のマシンなどにリンクを貼りたい場合、つまり有名なサイトや友人のサイトなどにリンクを貼りたいという場合にはは絶対パスでそのURLを全て指定しないと、リンクすることが出来ません。
なおWebのURLでは大文字と小文字が区別されますので、注意してください。