絶対パスと相対パス
せんせい、画像や他のページへリンクしたいんですけど、うまく表示されないんですよ。画像の変わりに「×」って出たり、ページを開くと「not found」って表示されてしまいます。 |
|
「×」や「not found」となってしまう場合は、ページ・画像が指定した場所にないか、指定のパスが間違ってるのだよ。 |
|
パスですか? <img src ="./***/***.gif">のことですよね? |
|
そのとおり。ついでだから絶対パスと相対パスについて勉強しとこうか。パスの知識はホームページを作る時に必ず必要になる。画像やページの指定だけじゃなくて、CGI やJavascriptなんかを使う時にも必要。 |
|
絶対パス??相対パス?? |
|
どちらも画像やファイルの場所を指定するパスの書き方だ。最初は分かりにくいから↓の図を見てくれ。住所を例にして説明しよう。 |
↑の場所に、それぞれ住んでいたとする。道を歩いていたら、知らない人に私が何処に住んでるか聞かれたとしよう。なんて答える? |
|
えーと、中流ハイツ3号棟の1階です。 |
|
では、お姉さんは何処? |
|
一戸建30年ローンの家の2階です。 |
|
そのとおり、それが絶対住所(このページだけの造語です)。絶対というのは「誰から見ても変わることのない住所」という感じで覚えておけばOK。これをホームページのパス風に置き換えるとこうなる。 |
|
じゃぁ、相対は? |
|
相対住所(造語です)は自分から見た相手の住所を表す。3階から見た私の住んでる場所は? |
|
僕の家から1階、2階下にせんせいが住んでます。 |
|
そのとおり、ホームページのパス風に置き換えるとこうなる。 |
|
絶対パスと相対パスについては、わかりましたけど、どんな時にそれぞれ使うんでしょう? |
|
自分のページの中で画像やリンク先を指定する時は相対パスを使う。絶対パスを使うのは、他の人のページへリンクする場合と覚えておけばOK。相対パスは同じサーバーの中だけで有効なので相対パスでは他の人のページにリンクできないのだ。最後に相対パスの指定方法を書いておくぞ。 |
|
自分のホームページが「HPフォルダ」に全て入っています。 |
相対パス指定のお約束 |
では、練習。「index.html」から「a.gif」への相対パスは? |
|
えーと、「index.html」と同じ階層にある「img」フォルダに「a.gif」があるので |
|
正解。では「diary.html」から「index.html」へのパスは? |
|
「index.html」が一階層上にあるので |
|
ム、正解。では最後に「diary.html」から「b.jpg」へのパスは? |
|
一階層上の「img」フォルダの中に「b.jpg」があるので |
|
・・・・・・・・ |
|
あれ、間違ってますか? |
|
せいかい・・・・。 |
|
あ、あの・・どうしたんですか? |
|
全部、正解でおもしろくない。 |
|
おもしろくなきゃ、いけないのか! |