当然ながら、最も重要なのは文脈で出現するリンクです。わざわざ挙げるまでもありませんが、ハイパーリンクをより使いやすくし、また異なる文書間の従属関係をよりはっきりさせるハイパーリンクの使い方を色々と考えています。 詳細(ハイパーリンクをより良い物に)
HOME、BACKなどのナビゲーション用のリンクを、HTMLのbody要素に直接記述する行為について考えます。
これは最も一般的かつ有効な方法ですが、欠点があります。
まず、ウェブサイトの構造の変化に対応しづらいです。「戻る」というアンカーを考えてみます。これは一般的にその文書の所属するコンテンツ1の目次などに「戻る」時に用いられますが、この文書を他のコンテンツ2でも再利用したいと考えた場合、この文書はコンテンツ2に同時に所属させることができません。コンテンツ2から、この文書に移動した際、「戻る」リンクはコンテンツ1を指してしまいます。
そして、著者それぞれ、言い換えればウェブサイトそれぞれによって構造が異なるため、閲覧者を混乱させる最大の原因になっています。あるサイトではこのPersonnelのように、ページ上部に階層をさかのぼるリンクを設けているかもしれません。またあるサイトでは、「戻る」という名前で同じ事をしているかも知れません。同じ「戻る」でも、コンテンツ内に序列された前の文書を指している場合もあります。さらに、言葉の曖昧な日本では、トップページ、Home、Menuという表現が著者によりそれぞれ全く違う意味を持っていたりするのです。
そもそも、文書の「内容」(body要素)に、ナビゲーション構造が紛れ込むのは不自然な気がします。body要素内に収まるのは、飽くまで本文であるべきです。文書間の関係を示す要素は、HTMLではちゃんとlink要素として明示することが出来るのですが、現実にはそれらを解釈するブラウザがあまりないため、著者は止む無くこのような形を採用せざるを得ないというのが現状です。
ウェブサイトのフレキシビリティ(柔軟性)を考える上でも「どこまでやるか」は重要です。その最適な解を探ります。
HTMLの要素として、文書間の関係を明示できるのはこの方法だけです。HTML文書を解釈するのは人間ではありませんから、是非想像力を働かせて、この要素の重要性を理解したいものです。
現状では、これを解釈するUserAgentは少ないのですが、一般的になったなら、表示領域を圧迫することなく、全てのウェブサイトを共通した操作で利用することができるかもしれません。
ウェブサイトの構造の変化に対応しづらいのは1.の場合と変わりありません。
このlink要素は、Document Object Modelを利用することにより、目に見えるナビゲーションとして再利用することが出来ます。その方法について考えてゆきます。
各スタイルシート対応のUserAgent以外には意味がありませんが、スタイルシートを用いるなら、サイト内で共通させるほうがベターだという話です。
idやclassの使い方について思うところがあります。
ナビゲーション構造を分離させてしまえば、構造の変化に、より柔軟に対応できるわけですが、javascriptで書き出す方法、object要素で埋め込む方法、2つが考えられます。
特にjavascriptであれば、現在地を示すことも不可能ではありません。しかしjavascriptオフの環境では意味を持ちませんので1.や2.の方法と併用する必要があります。
いずれにしろウェブサイトが巨大になれば、表示領域をどんどん圧迫します。対策として、select要素とoptgroup要素を用いてコンパクトに纏める、DHTMLを用いてドロップダウンメニューのような形にしてしまう、などありますが、UserAgent依存であることが悩める点であります。従ってこの方法を用いる場合、これに依存し切ることなく、1.を代替的に書き出すように配慮しておくべきでしょう。
何れにしろ、試してみるべき面白い方法でありますが、JavaScriptの知識が無いためになかなか構想が具体的な形になりません。