リンクについて

basic.gif (3042 バイト)

1.

基本となるURL(アドレス)2
NE3 NE4 NE6 IE3 IE4 IE5 IE6 i

基本編で少し触れた基本アドレス
これには、もう少し違った使い方もあるんだ。
前回は自分のページのURLを入れると書いていたね。
これは、実際にはあまり実用性が無かったんだ(なぜなら別に書いても書かなくても一緒だから)。
今回もタグ事態は一緒だけれど使うところが違うんだよ。

<BASE HREF="">    ・・・・基本となるURL

■:基本となるアドレスの絶対パス

同じように、<HEAD>〜</HEAD>の間に記入しておいてね。
けれど、今回はどこのページでこれを使ってもいいんだ。
説明するのは難しいので例をあげてみよう。
例えば、現在のURLが
http://village.infoweb.ne.jp/~fwig2642/yoshi/make_HP/make_homepage.htm
とした時、
http://village.infoweb.ne.jp/~fwig2642/yoshi/make_HP/free_CGI/main.htm
へリンクを貼りたい場合、相対パスの赤色の部分だけ(./free_CGI/main.htm)を書けばいいんだよね。
jamp.gif (1016 バイト)絶対パス、相対パス
じゃあ、現在のページが
http://village.infoweb.ne.jp/~fwig2642/yoshi/make_HP/make_homepage.htm
とした時に、
http://village.infoweb.ne.jp/~fwig2642/yoshi/make_HP/free_CGI/main.htm
へのリンクを別の方法でやってみよう。

まず、<HEAD>〜</HEAD>の間に
<BASE HREF="http://village.infoweb.ne.jp/~fwig2642/">
を入れてみよう。
この時点で、これから扱うアドレスはこのhttp://village.infoweb.ne.jp/~fwig2642/を基本としたアドレスとします。
というふうに宣言しているんだ。
つまり、現在のページは
http://village.infoweb.ne.jp/~fwig2642/yoshi/make_HP/make_homepage.htm
だけれどもそんなことは関係無しに、
http://village.infoweb.ne.jp/~fwig2642/
を基準とするということなんだ
じゃあ、これを考えてさっきの
http://village.infoweb.ne.jp/~fwig2642/yoshi/make_HP/free_CGI/main.htm
へのリンクを貼ってみよう。
基準アドレスから考えると、赤の部分が相対アドレスになるので
相対アドレスは、
./yoshi/make_HP/free_CGI/main.htm
を書けばいいんだね。

<なぜこんなことをするのか?>
なぜこんなことをするのだろうか。
別のページでも触れているように、相対アドレスは相対アドレスで利点があるんだ。
今回はこの基準アドレスの利点を考えてみよう。
さっきの例のようなことがあったとしよう。
http://village.infoweb.ne.jp/~fwig2642/yoshi/make_HP/make_homepage.htm
のページが何らかの理由でアドレスが変わったとしよう。
http://village.infoweb.ne.jp/~fwig2642/yoshi/make_HP/html/main/make_homepage.htm
こんなふうに変わってしまうと、
http://village.infoweb.ne.jp/~fwig2642/yoshi/make_HP/free_CGI/main.htm
への相対パスは
../../free_CGI/main.htm
となってしまう。
さっきは
./free_CGI/main.htmだったよね。
つまり、ページのアドレスが変わったことによってページ内のリンク(画像など)のアドレスも全て変えてやらなければならないんだ。

じゃあ、次に基準アドレスを使った場合を考えてみよう。
アドレスは
http://village.infoweb.ne.jp/~fwig2642/yoshi/make_HP/html/main/make_homepage.htm
のように変わったけれど
<HEAD>の中で基準アドレスを
http://village.infoweb.ne.jp/~fwig2642/
としているので、
アドレス変更に関係なく、
http://village.infoweb.ne.jp/~fwig2642/yoshi/make_HP/free_CGI/main.htm
への相対パスは基準アドレスからの相対アドレスを考えて、
yoshi/make_HP/free_CGI/main.htm
でいいよね。
これだったら、ページのアドレスをいくら変えても基準アドレスは変わらないのでリンクの変更などもしなくていいんだ。

このように<BASE>タグはページ作りを楽にしてくれる。
けれど、理解するのが大変だね。
基準アドレスを使った相対アドレスも基準アドレスを使っていない場合の相対アドレスもそれぞれ利点があるんだ。
その利点などについては、
絶対パスと相対パスのどっちがいいの?
に載っているので参考にしてみてね。

ここで応用編は終わりです
top.gif (583 バイト) 目次へ戻る


back.gif (1116 バイト) メールに題名をつけよう!
top.gif (583 バイト) 目次へ戻る