ややこしい「絶対パス」と「相対パス」についてまとめる。

Web(HTML)のパス指定は、
必ず「絶対パス」か「相対パス」のどちらかになる。

省略形を勘違いすると、
どちらかわからず混乱しやすい。

絶対パス

パスを書くファイルの現在位置とは無関係に、パスを指定できる方法。
相対パスの場合は、その逆でファイルの位置関係に左右される。

次のルールで考えることができる。

  • 「http://xxxx.jp/aaa/bbb.js」のように「http://」から始まるのが基本。
  • ただし、「/」から始まる場合も絶対パスになる。
    その場合は、「http://xxx.jp」の部分が省略されているという解釈になる。

相対パス

パスを書くファイルの現在位置の相対関係で、パスを指定できる方法。
絶対パスの場合は、その逆でルートからの絶対的な位置関係になる。

次のルールで考えることできる。

  • 「./」あるいは「../」で始まるのが基本。
    「./」は現在の位置、「../」は親の位置という意味になる。
  • ファイル名orディレクトリ名から始まっても相対パスになる。
    その場合は、「./」が省略されているという解釈になる。

見分け方

基本的にはパスの始まりに注目することで、
「絶対パス」か「相対パス」かを判断できる。

ポイントは「省略形を勘違いしない」こと。

表にまとめると、次のようになる。

パスの始まり 「絶対」or「相対」 メモ
http://xxxx.jp/ 絶対パス 一目瞭然。ただドメインから書き始めることはあまりない。
/ 相対パスと間違えやすいので要注意。
./ 相対パス 現在のディレクトリという意味。「.」始まりは相対パス。
../ 親のディレクトリという意味。「.」始まりは相対パス。
(ファイル名orディレクトリ名) これも相対パス。

PR