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, %eventscharset = 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) には、次のようなキーワードが考えられます;
AlternateStylesheet
StartNextPrevContentsIndexGlossaryCopyrightChapterSectionSubsectionAppendixHelpBookmarkこれらのリンク形式は、一つの 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 がどのように振る舞うかは特定できません。