<link>タグは、リンクする外部リソースを指定する際に使用します。
外部リソースとは、例えば、HTMLファイル、CSSファイル、RSSファイルなど、現在の文書ファイルに関連している外部ファイルのことです。
<link>タグは、<head>~</head>の中に記述します。
<link>タグを指定する場合には、href属性とrel属性が必須です。
href属性とrel属性が指定されていない場合には、<link>タグの指定は無効となります。
href属性には、リンクする外部ファイルのURLを指定します。
rel属性にはリンクタイプを指定します。
具体的には、現在のファイルとリンク先の外部ファイルとの関係性を表すキーワードを指定します。
リンクタイプには以下の値などがあります。
link要素のrel属性に指定可能なキーワード値
以下の値のうち、よく使用されているのはstylesheetやalternateなどです。
現在のところ、それ以外の値は実際にはあまり使用されておらず、一般的なブラウザではあまりサポートされていないようです。
- alternate ……現在文書の代替表現を指定します。
- author ……現在文書の作者へのリンクを指定します。
- help ……ヘルプへのリンクを指定します。
- icon ……現在文書を表すアイコンをインポートします。
- license ……現在文書の著作権ライセンスに関する文書へのリンクを指定します。
- next ……現在文書の一つ後の文書へのリンクを指定します。
- pingback ……現在文書のpingbackサーバのアドレスを指定します。
- prefetch ……先読みするべき外部リソースを指定します。
- prev ……現在文書の一つ前の文書へのリンクを指定します。
- search ……現在文書の関連ページを検索するためのリソースへのリンクを指定します。
- sidebar ……ブラウザのサイドバーに表示する外部リソースを指定します。
- stylesheet ……スタイルシートをインポートします。
- tag ……現在文書に付けるタグを指定します。
link要素には、href属性とrel属性以外の属性としては、
外部リソースの対象メディアを指定するmedia属性、
外部リソースの言語を指定するhreflang属性、
リンクする外部リソースのMIMEタイプを指定するtype属性、
アイコンのサイズを指定するsizes属性が用意されています。
HTML文書以外の外部ファイルを指定する際には、
特にtype属性の値に適切なMIMEタイプを指定しておくと、外部ファイルの種類が正しく認識されて誤作動が起きにくくなるでしょう。
title属性は様々な要素で使用できる汎用的な属性ですが、
link要素で代替スタイルシートを指定する際には、
title属性でその代替スタイルシートのタイトルを指定します。
<link>タグは一つの文書内に複数記述することができます。
例えば、rel=”stylesheet”を指定された複数の<link>タグで、複数の外部CSSファイルを指定することも可能です。
この場合、リンクしている複数の外部CSSファイルのスタイル指定がすべて有効となります。
スタイル指定が競合した場合には、より後から読み込まれたCSSファイルのスタイル指定が優先されます。
■HTML4.01からHTML5へのバージョンアップによる変更点
link要素は、HTML4.01からHTML5へのバージョンアップで大きな変更はありません。
■属性
- href属性
- リンクする外部リソースのURL(必須属性)
- rel属性
- 現在のファイルとリンク先の外部ファイルとの関係性を表すキーワード(必須属性)
- media属性
- リンクする外部リソースの対象メディア
- hrefflag属性
- リンクする外部リソースの言語
- type属性
- リンクする外部リソースのMIMEタイプ
- sizes属性
- アイコンのサイズ
■使用例
HTMLソース
<!DOCTYPE html>
<html>
<head>
<title>link要素の使用例</title>
<link rel=”stylesheet” href=”default.css”>
<link rel=”stylesheet” href=”green.css” title=”Green styles”>
<link rel=”alternate stylesheet” href=”contrast.css” title=”High contrast”>
<link rel=”alternate stylesheet” href=”big.css” title=”Big fonts”>
<link rel=”alternate stylesheet” href=”wide.css” title=”Wide screen”>
</head>
<body>
<p>link要素の使用例です。</p>
</body>
</html>