last modified 5th/Oct. 2000
Web Page は各々世界中で一意的(identifiable)な位置を占めます。この位置を URL と呼びます。 LINK 要素は、或る HTML 文書から、別の URL に有る外部リソース(資源)を参照する場合に用います。
A 要素とは異なり、 HEAD 要素の中にしか現れられませんが、何度でも現れる可能性があります。
LINK 要素は開始タグのみで終了タグが存在しません。このような要素の事を空要素 (Empty Element) と呼びます。
HTML 4 では、空要素は「開始タグだけで終了タグが存在しない」とされ、 <link ...>
と書くことになっていますが、その上位バージョンである XHTML 1.0 では、空要素でも終了タグが必須となっており、 <link ... />
と記述しなければなりません。
<head> <title>タイトル</title> <link rev="made" href="mailto:メールアドレス"> <!--ページの製作者への連絡先--> <link rel="next" hef="./body.html"> <!--このページの次のページ--> <link rel="prev" href="./robots.html"> <!--前のページ--> <link rel="StyleSheet" href="./def.css" type="text/css"> <!--固定スタイルシート--> <link rel="alternate stylesheet" title="modern" href="./modern.css" type="text/css"> <!--代替スタイルシート--> <link rel="stylesheet" title="cool" href="./cool.css" type="text/css"> <!--優先スタイルシート--> </head>
I.E.5.x や Netscape6 では全く働きませんが、 Lynx, w3m, iCab などのブラウザでは、 link 要素の内容に応じてウィンドウにナビゲーションバーが表示されます。
ユーザエージェントが、ユーザが当該文書を閲覧している間に、次や前、インデックスなどのファイルを先読みしてくれるかもしれません。
HTML 4 Transitional DTD の抜粋;
<!ELEMENT LINK - O EMPTY -- a media-independent link --> <!ATTLIST LINK %attrs; -- %coreattrs, %i18n, %events -- charset %Charset; #IMPLIED -- char encoding of linked resource -- href %URI; #IMPLIED -- URI for linked resource -- hreflang %LanguageCode; #IMPLIED -- language code -- type %ContentType; #IMPLIED -- advisory content type -- rel %LinkTypes; #IMPLIED -- forward link types -- rev %LinkTypes; #IMPLIED -- reverse link types -- media %MediaDesc; #IMPLIED -- for rendering on these media -- target %FrameTarget; #IMPLIED -- render in this frame -- >
パラメタ実体 %attrs;
は殆どの要素に定義されている属性の集合です。詳しくは、「パラメタ実体 %attrs;」を参照ください。
head
要素の内容部で任意の回数表れてよい。%attrs;
%coreattrs
, %i18n
, %events
charset
= charset [CI]href
属性のリンク先リソースの文字符号化法の指定。ISO-8859-1
(Latin-1
):殆どの西ヨーロッパ言語で利用ISO-8859-5
:キリル文字をサポートShift_JIS
:日本語文字符号化法(Machintosh、Windows Me 以前などのパソコン用)ISO-2022-JP
:日本語文字符号化法(JISと呼ばれる: メールなど)EUC-JP
:日本語文字符号化法(UNIX 用)UTF-16
:基本 16 ビットユニコード。バージョンが三つあり、 Windows の unicode は "UTF-16LE" のこと。UTF-8
:ASCII互換の可変長ユニコードhref
= uri [CT]hreflang
= langcode [CI]href
属性が指定されているときに、目的 URI にある文書の言語コードを指定。en
: 英語en-US
: アメリカ英語en-cockney
: コックニー訛りja
: 日本語zh
: 中国語type
= content-type [CI]rel
= link-types [CI]href
属性で指定したリソースへの関係を指定。rev
= link-types [CI]href
属性で指定したりソースから、当該文書への関係を指定。media
= media-descriptors [CI]screen
"target
= frame-target [CI]href
属性値の URL に対応する文書が、当該文書に対してどのような役割を果たすのかを、 rel
属性で指定できます。一方、 rev
属性は、rel
属性の逆の関係を指示します。従って、 rel="next"
と rev="prev"
は等価です。
rel 属性や rev 属性の値となるリンク形式 (link-type) には、次のようなキーワードが考えられます;
Alternate
Stylesheet
Start
Next
Prev
Contents
Index
Glossary
Copyright
Chapter
Section
Subsection
Appendix
Help
Bookmark
これらのリンク形式は、一つの rel 属性に対して同時に複数指定できます;
<link rel="start index contents" href="../index.html">
この例では、相対 URL ../index.html
に有る文書は、当該文書にとっての Start であり、 Index であり、 Contents でもあることが指定されています。
製作者への連絡先 | <link rev="made" href="mailto:e-mail address"> |
---|---|
start page | <link rel="start" href="url"> |
目次 | <link rel="contents" href="url"> |
前のpage | <link rel="prev" href="url"> |
次のpage | <link rel="next" href="url"> |
リンク集 | <link rel="bookmark" href="url"> |
外部スタイルシート | <link rel=stylesheet type="text/css" href="url"> |
keywords, description などの META tags、 next, prev などの LINK tags は検索ロボット向けと云う面が多分に有ります。検索エンジンに関しては検索ロボット対策を参照下さい。
次の例は、連続的な文書の、最初の文書を示しています:
<head> <title>参照マニュアル -- p. 5</title> <link rel="start" title="マニュアルの最初のページ" type="text/html" href="http://someplace.com/manual/start.html"> </head>
次の例は、作者、索引、次、前の文書を示しています:
<head> <title>chapter 2</title> <link rev="made" href="mailto:メールアドレス"> <link rel="index" href="../index.html"> <link rel="next" href="chapter3.html"> <link rel="prev" href="chapter1.html"> </head>
次の例は、当該文書のフランス語翻訳版を示しています:
<head> <title>the manual in english</title> <link lang="fr" title="la documentation en français" type="text/html" rel="alternate" hreflang="fr" href="http://someplace.com/manual/french.html"> </head>
次の例は、外部スタイルシートを示しています:
<head> <!-- 固定スタイルシート --> <link type="text/css" rel="stylesheet" href="./def.css"> <!-- ユーザー選択可能スタイルシート --> <link type="text/css" rel="alternate stylesheet" href="./selectable1.css"> <link type="text/css" rel="alternate stylesheet" href="./selectable2.css"> </head>
これらの LINK 要素を記述する事で、例えば次のようなメリットが期待できます;
しかし、実際には個々の UA がどのように振る舞うかは特定できません。