今まではリンク先としてWebページ単位で指定していましたが、リンク先はWebページの文書の中の特定の場所へリンクを設定する事も可能です。特定の場所がページの先頭でなかった場合、リンク先へ移動すると指定した場所が表示されるように自動的にスクロールされます。
特定の場所へリンクを設定するには、リンク先となる特定の場所に目印を付けておく必要があります。その為、リンク先のWebページを編集できなければなりませんので必然的に自分で管理しているWebページが対象となります。(他のWebサイトであってもたまたまできる場合もあります)。
この形式のリンクを設定する場合、HTML/XHTMLの種類毎に記述方法が異なります。ここではHTML5について記述します。
HTML5ではa要素のname属性が廃止されるため、リンク先の場所へ目印を付けるにはid属性を使います。
id属性はa属性に限らず様々な要素で指定することができます。例えばh2要素に次のようにid属性を付けることができます。
id属性の値として指定する名前は同じ文書内でユニークである必要があります。
リンク先としての記述方法はHTMLの場合と同じです。
リンク先のURLの後にシャープ「#」を記述した後で目印に付けた名前を記述します。
具体的には次のように記述します。
リンク元のページから「baseball.html」の中の「中日ドラゴンズ」の箇所にリンクを張りたい場合には「baseball.html」は次のようになります。
HTML5ではh2要素などにid属性を指定できますので別途a要素を追加しなくても済むことです。もちろんid属性が指定できない場所に対してはa要素を同じように使ってid属性を指定することもできます。
そしてリンク元のWebページでは次のような記述を行います。
こちらの記述は同じです。
では実際に試してみます。
今回はIT関連用語を解説するページ「it.html」を一つ作成しました。
保存場所は下の層「dict」にします。
今回はHTML5で作成しています。一つのWebページに複数の項目の解説を記述し、各項目毎にリンクの目印となるようa要素でマークアップしてid属性を指定しています。
また各項目への目次として「terms_index.html」を作成しました。
では「terms_index.html」ファイルをブラウザで開いてみます。
各項目のリンクはファイル内の各項目に対応した場所へのリンクとなっています。では「Webブラウザとは」をクリックしてみます。
リンク先である「it.html」が表示されますが、文書の先頭が表示されているのではなく名前として「browser」が指定してある場所が先頭に表示される位置に自動的に移動しています。
では「terms_index.html」に戻って「HTMLとは」をクリックしてみます。
今度は名前として「html」が指定してある場所が先頭に表示される位置に自動的に移動しています。
再び「terms_index.html」に戻って「ホームページとは」をクリックしてみます。
今度は名前として「homepage」が指定してある場所が先頭に表示される位置に自動的に移動しています。
以上で、ページ内リンクの練習は終わりです。