link 要素since: 31st/Aug./2001; last modified: 8th/Sep./2001
link 要素タイプはリンクモジュールに含まれる要素で、 head 要素の子要素として定義されています。 head 要素は任意の個数 link 要素を持って良いことになっています。
link 要素タイプの役割は、当該文書と関係のある外部文書と、その関係を指定することです。
link| 要素 | 属性 | 最小内容モデル |
|---|---|---|
link |
Common,
charset (Charset),
href (URI),
hreflang (LanguageCode),
media (MediaDesc),
rel (LinkTypes),
rev (LinkTypes),
type (ContentType) |
EMPTY |
実装: DTD
link 要素は meta 要素と同様に空要素であり、内容モデルを持ちません (EMPTY)。従って、タグの記述方法が、空要素以外の要素とでは変わります。開始タグの末尾を " />" としてください:
<head> <title>XHTML 1.1 とはなんだろうか</title> <link rel="start" href="../index.html" /> </head>
スラッシュの直前に半角スペースが一つ挿入されているのは、後方互換のためです。
CommonCore + Events + I18N + Stylecharset = Charsethref = URIhreflang = LanguageCodemedia = MediaDescmedia="screen,print"rel = LinkTypesrel="next"rev = LinkTypesrev="prev"type = ContentType
<head>
<title>meta要素</title>
<link rel="prev" href="./title.html"
title="title要素" />
<link rel="next" href="./link.html"
title="リンク要素" />
<link rel="start index" href="./index.html"
title="XHTML 1.1 とはなんだろうか" />
<link rel="bookmark" href="./links.html"
title="Web Site 作成支援リンク集" />
<link rel="bookmark" href="../links/index.html"
title="NEXTindex リンク集" />
<link rev="made"
href="mailto:ƒ��[ƒ‹ƒAƒhƒŒƒX"
title="製作者へのメール" />
</head>
上から順番に当該文書の「一つ前の文書」、「次の文書」、「最初であり索引である文書」、「ブックマーク」、「ブックマーク」、「製作者への連絡先」が指定されています。
リンク先目的地文書の役割は、 rel 属性、 rev 属性でリンクタイプを用いて指定します。一つのリンク目的地文書に対して複数のリンクタイプを指定する場合は、複数のリンクタイプを半角スペースで区切ったリストが属性値になります。
rev 属性と rel 属性rel 属性は当該文書に対する目的地文書の関係 (relation) を指定し、 rev 属性はその逆 (reverse relation) をい指定します。ファイル A からみてファイル B が "NEXT" ならば、ファイル A ではファイル B を rel="next" として参照します。同時にファイル B ではファイル A を rev="next" として参照します 。
bookmarkいわゆるリンク集です。一つの文書に複数のリンク集を与える文書が定義されていることが珍しくありません。このような時は、複数の link 要素を記述することになります。一つの外部リソースに複数のリンクタイプを指定したい場合とは逆になりますので、注意が必要です。
MS I.E.6, Netscape 6.1 ではサポートされていませんが、 Lynx, W3m, iCab などではサポートされています。
<link rel="stylesheet" href="./core.css"
media="screen,print" type="text/css"
title="Fixed" />
<link rel="alternate stylesheet" href="./green.css"
media="screen,print" type="text/css"
title="Green Style" />
<link rel="alternate stylesheet" href="./navy.css"
media="screen,print" type="text/css"
title="Navy Style" />
<link rel="alternate stylesheet" href="./maroon.css"
media="screen,print" type="text/css"
title="Red Style" />
外部スタイルシートへのリンクでは、rel 属性の値が stylesheet になります。ユーザーが選択可能な代替スタイルシートでは alternate と一緒に指定します: rel="alternate stylesheet"
上の例では、 media 属性値のメディア記述子によって、スタイルシートを適合させる対象メディアをコンピュータスクリーン (screen) と印刷媒体 (print) に指定しています: media="screen,print"
この例のように、メディア記述子を複数指定する場合は、複数のメディア記述子を半角コンマで区切ったリストが属性値になります。リンクタイプの場合は半角スペースで区切ったリストになりますので、紛らわしいですね。
因みに、 CSS のデータタイプは text/css です: type="text/css"
CSS に関する概要は本稿付録「CSS」を参照ください。詳細は「CSS とはなんだろうか」を参照ください。
リンクタイプ alternate のリンクで、 hreflang を指定すると翻訳版、 media を指定すれば当該メディア版を指し示すことになります。
<link xml:lang="fr" title="La documentation en Français"
type="text/html"
rel="alternate" hreflang="fr"
href="http://someplace.com/manual/french.html" />
このリンクは、当該文書のフランス語翻訳版 (hreflang="fr") を指し示しています。
<link title="The manual in postscript"
type="application/postscript"
rel="alternate" media="print"
href="http://someplace.com/manual/postscript.ps" />
このリンクは、当該文書の印刷用 (media="print") ポストスクリプト版 (type="application/postscript") を指し示しています。