1.仕様
LINK要素は、
現在の文書と
外部のリソースとの
関係を指定します。
LINK - X EMPTY -- a media-independent link. (Void elements.) [Metadata
- link
-
外部リソースにリンク (a media-independent link)
- 種類
-
空要素
任意のコンテンツを持つことができない要素です。
- カテゴリ
-
- メタデータ
コンテンツ - フロー
コンテンツ (条件付き) - フレージング
コンテンツ (条件付き)
itemprop属性が存在する場合、または body-ok のキーワードのみを含む rel属性が存在する場合は、フローコンテンツ, フレージングコンテンツ。
- メタデータ
- 使用できるコンテキスト
-
- メタデータ
コンテンツ を受け入れる要素 - <head>
要素 の子である<noscript>要素 に 0個以上 - フレージング
コンテンツ を受け入れる要素
メタデータ
コンテンツ を受け入れる要素のコンテンツとして、使用できます。
<head>要素 の子である<noscript>要素 に 0個以上を そのコンテンツとして、使用できます。
フレージングコンテンツ を受け入れる要素のコンテンツとして、使用できます。メタデータ
コンテンツ を受け入れる要素は、<head>要素 です。フレージング
コンテンツ を受け入れる要素は、<h1>要素 , <h2>要素 , <h3>要素 , <h4>要素 , <h5>要素 , <h6>要素 , <p>要素 , <pre>要素 , <output>要素 , <progress>要素 , <meter>要素 , <label>要素 , <datalist>要素 , <body>要素 , <section>要素 , <nav>要素 , <aside>要素 , <article>要素 , <header>要素 , <footer>要素 , <main>要素 , <address>要素 , <li>要素 , <dt>要素 , <dd>要素 , <caption>要素 , <th>要素 , <td>要素 , <form>要素 , <fieldset>要素 , <search>要素 , <blockquote>要素 , <figure>要素 , <figcaption>要素 , <div>要素 , <dialog>要素 , <abbr>要素 , <b>要素 , <bdi>要素 , <bdo>要素 , <cite>要素 , <code>要素 , <data>要素 , <dfn>要素 , <em>要素 , <i>要素 , <kbd>要素 , <mark>要素 , <q>要素 , <s>要素 , <samp>要素 , <small>要素 , <span>要素 , <strong>要素 , <sub>要素 , <sup>要素 , <u>要素 , <var>要素 です。ただし、フレージングコンテンツが期待される場所は、要素が本文内で許可されている場合に限ります。
- メタデータ
- コンテンツモデル
-
何もない
要素のコンテンツモデルが「何もない」の場合、要素にはテキストノード (要素間の空白以外) と要素ノードが含まれていてはなりません。
- タグの省略
-
終了タグはありません。
- コンテンツ属性
-
グローバル属性 他
- href
属性 - ハイパーリンクのアドレス
- crossorigin
属性 - 要素がクロスオリジンリクエストを処理する方法
- rel
属性 - ハイパーリンクを含むドキュメントと宛先リソースの関係
- media
属性 - 該当するメディア
- integrity
属性 - サブリソース整合性チェックで使用される整合性メタデータ[SRI]
- hreflang
属性 - リンクされたリソースの言語
- type
属性 - 参照されるリソースのタイプのヒント
- referrerpolicy
属性 - 要素によって開始されたフェッチのリファラーポリシー
- sizes
属性 - アイコンのサイズ(rel ='icon'の場合)
- imagesrcset
属性 - 高解像度ディスプレイ、小型モニターなど、さまざまな状況で使用する画像(rel ='preload'の場合)
- imagesizes
属性 - さまざまなページレイアウトの画像サイズ(rel ='preload'の場合)
- as
属性 - プリロード要求の潜在的な宛先(rel ='preload'およびrel='modulepreload'の場合)
- blocking
属性 - 要素が潜在的にレンダリングをブロックしているかどうか
- color
属性 - サイトのアイコンをカスタマイズするときに使用する色(rel ='mask-icon'の場合)
- disabled
属性 - リンクが無効になっているかどうか
- fetchpriority
属性 - 要素によって開始されるフェッチの優先順位
- title
属性 - この要素に特別なセマンティクスで、リンクのタイトル, CSSスタイルシートセット名。
charset属性がありましたが、廃止されました。代わりに、リンクされたリソースで HTTP `Content-Type` ヘッダーを使用して下さい。
methods属性がありましたが、廃止されました。代わりに HTTP OPTIONS 機能を使用して下さい。
rev属性がありましたが、廃止されました。代わりに、反対の用語を指定してrel属性を使用して下さい。 (たとえば、rev='made' の代わりに、rel='author' を使用します。)
urn属性がありましたが、廃止されました。代わりに href 属性を使用して、優先される永続識別子を指定します。
target属性がありましたが、廃止されました。不要です。 全く省略して下さい。
- href
- DOM インターフェイス
-
HTMLLinkElement
[Exposed=Window]
interface HTMLLinkElement : HTMLElement {
lastReviewed;
[HTMLConstructor] constructor();
[CEReactions] attribute USVString href;
[CEReactions] attribute DOMString? crossOrigin;
[CEReactions] attribute DOMString rel;
[CEReactions] attribute DOMString as;
[SameObject, PutForwards=value] readonly attribute DOMTokenList relList;
[CEReactions] attribute DOMString media;
[CEReactions] attribute DOMString integrity;
[CEReactions] attribute DOMString hreflang;
[CEReactions] attribute DOMString type;
[SameObject, PutForwards=value] readonly attribute DOMTokenList sizes;
[CEReactions] attribute USVString imageSrcset;
[CEReactions] attribute DOMString imageSizes;
[CEReactions] attribute DOMString referrerPolicy;
[SameObject, PutForwards=value] readonly attribute DOMTokenList blocking;
[CEReactions] attribute boolean disabled;
[CEReactions] attribute DOMString fetchPriority;
// also has obsolete members
};
HTMLLinkElement includes LinkStyle;
HTMLElement
[Exposed=Window]
interface HTMLElement : Element {
[HTMLConstructor] constructor();
// metadata attributes
[CEReactions] attribute DOMString title;
[CEReactions] attribute DOMString lang;
[CEReactions] attribute boolean translate;
[CEReactions] attribute DOMString dir;
// user interaction
[CEReactions] attribute (boolean or unrestricted double or DOMString)? hidden;
[CEReactions] attribute DOMString inert;
undefined click();
[CEReactions] attribute DOMString accessKey;
readonly attribute DOMString accessKeyLabel;
[CEReactions] attribute boolean draggable;
[CEReactions] attribute boolean spellcheck;
[CEReactions] attribute DOMString writingSuggestions;
[CEReactions] attribute DOMString autocapitalize;
[CEReactions] attribute [LegacyNullToEmptyString] DOMString innerText;
[CEReactions] attribute [LegacyNullToEmptyString] DOMString outerText;
ElementInternals attachInternals();
// The popover API
undefined showPopover();
undefined hidePopover();
boolean togglePopover(optional boolean force);
[CEReactions] attribute DOMString? popover;
};
HTMLElement includes GlobalEventHandlers;
HTMLElement includes ElementContentEditable;
HTMLElement includes HTMLOrSVGElement;
Element
[Exposed=Window]
interface Element : Node {
readonly attribute DOMString? namespaceURI;
readonly attribute DOMString? prefix;
readonly attribute DOMString localName;
readonly attribute DOMString tagName;
[CEReactions] attribute DOMString id;
[CEReactions] attribute DOMString className;
[SameObject, PutForwards=value] readonly attribute DOMTokenList classList;
[CEReactions, Unscopable] attribute DOMString slot;
boolean hasAttributes();
[SameObject] readonly attribute NamedNodeMap attributes;
sequence<DOMString> getAttributeNames();
DOMString? getAttribute(DOMString qualifiedName);
DOMString? getAttributeNS(DOMString? namespace, DOMString localName);
[CEReactions] undefined setAttribute(DOMString qualifiedName, DOMString value);
[CEReactions] undefined setAttributeNS(DOMString? namespace, DOMString qualifiedName, DOMString value);
[CEReactions] undefined removeAttribute(DOMString qualifiedName);
[CEReactions] undefined removeAttributeNS(DOMString? namespace, DOMString localName);
[CEReactions] boolean toggleAttribute(DOMString qualifiedName, optional boolean force);
boolean hasAttribute(DOMString qualifiedName);
boolean hasAttributeNS(DOMString? namespace, DOMString localName);
Attr? getAttributeNode(DOMString qualifiedName);
Attr? getAttributeNodeNS(DOMString? namespace, DOMString localName);
[CEReactions] Attr? setAttributeNode(Attr attr);
[CEReactions] Attr? setAttributeNodeNS(Attr attr);
[CEReactions] Attr removeAttributeNode(Attr attr);
ShadowRoot attachShadow(ShadowRootInit init);
readonly attribute ShadowRoot? shadowRoot;
Element? closest(DOMString selectors);
boolean matches(DOMString selectors);
boolean webkitMatchesSelector(DOMString selectors); // legacy alias of .matches
HTMLCollection getElementsByTagName(DOMString qualifiedName);
HTMLCollection getElementsByTagNameNS(DOMString? namespace, DOMString localName);
HTMLCollection getElementsByClassName(DOMString classNames);
[CEReactions] Element? insertAdjacentElement(DOMString where, Element element); // legacy
undefined insertAdjacentText(DOMString where, DOMString data); // legacy
};
GlobalEventHandlers
interface mixin GlobalEventHandlers {
attribute EventHandler onabort;
attribute EventHandler onauxclick;
attribute EventHandler onbeforeinput;
attribute EventHandler onbeforematch;
attribute EventHandler onbeforetoggle;
attribute EventHandler onblur;
attribute EventHandler oncancel;
attribute EventHandler oncanplay;
attribute EventHandler oncanplaythrough;
attribute EventHandler onchange;
attribute EventHandler onclick;
attribute EventHandler onclose;
attribute EventHandler oncontextlost;
attribute EventHandler oncontextmenu;
attribute EventHandler oncontextrestored;
attribute EventHandler oncopy;
attribute EventHandler oncuechange;
attribute EventHandler oncut;
attribute EventHandler ondblclick;
attribute EventHandler ondrag;
attribute EventHandler ondragend;
attribute EventHandler ondragenter;
attribute EventHandler ondragleave;
attribute EventHandler ondragover;
attribute EventHandler ondragstart;
attribute EventHandler ondrop;
attribute EventHandler ondurationchange;
attribute EventHandler onemptied;
attribute EventHandler onended;
attribute OnErrorEventHandler onerror;
attribute EventHandler onfocus;
attribute EventHandler onformdata;
attribute EventHandler oninput;
attribute EventHandler oninvalid;
attribute EventHandler onkeydown;
attribute EventHandler onkeypress;
attribute EventHandler onkeyup;
attribute EventHandler onload;
attribute EventHandler onloadeddata;
attribute EventHandler onloadedmetadata;
attribute EventHandler onloadstart;
attribute EventHandler onmousedown;
[LegacyLenientThis] attribute EventHandler onmouseenter;
[LegacyLenientThis] attribute EventHandler onmouseleave;
attribute EventHandler onmousemove;
attribute EventHandler onmouseout;
attribute EventHandler onmouseover;
attribute EventHandler onmouseup;
attribute EventHandler onpaste;
attribute EventHandler onpause;
attribute EventHandler onplay;
attribute EventHandler onplaying;
attribute EventHandler onprogress;
attribute EventHandler onratechange;
attribute EventHandler onreset;
attribute EventHandler onresize;
attribute EventHandler onscroll;
attribute EventHandler onscrollend;
attribute EventHandler onsecuritypolicyviolation;
attribute EventHandler onseeked;
attribute EventHandler onseeking;
attribute EventHandler onselect;
attribute EventHandler onslotchange;
attribute EventHandler onstalled;
attribute EventHandler onsubmit;
attribute EventHandler onsuspend;
attribute EventHandler ontimeupdate;
attribute EventHandler ontoggle;
attribute EventHandler onvolumechange;
attribute EventHandler onwaiting;
attribute EventHandler onwebkitanimationend;
attribute EventHandler onwebkitanimationiteration;
attribute EventHandler onwebkitanimationstart;
attribute EventHandler onwebkittransitionend;
attribute EventHandler onwheel;
};
ElementContentEditable
interface mixin ElementContentEditable {
[CEReactions] attribute DOMString contentEditable;
[CEReactions] attribute DOMString enterKeyHint;
readonly attribute boolean isContentEditable;
[CEReactions] attribute DOMString inputMode;
};
HTMLOrSVGElement
interface mixin HTMLOrSVGElement {
[SameObject] readonly attribute DOMStringMap dataset;
attribute DOMString nonce; // intentionally no [CEReactions]
[CEReactions] attribute boolean autofocus;
[CEReactions] attribute long tabIndex;
undefined focus(optional FocusOptions options = {});
undefined blur();
};
LinkStyle
interface mixin LinkStyle {
readonly attribute CSSStyleSheet? sheet;
};
- ARIA in HTML
-
暗黙的="
No
" ARIAロール="No
" aria-* 属性="No
"暗黙的な ARIAセマンティクスがありませんが、意味はあり、この意味は、ARIA によって提供されず、ARIA のユーザーに公開されていないロール、状態、プロパティで表現される可能性があります。
作成者は、暗黙的な ARIAセマンティクス, または HTML要素のネイティブセマンティクスを上書きしてはいけません。
記述できる aria-* 属性はありません。
- レンダリング
- ボックスを生成しない
非表示の要素
link {
display: none;
}
CSS を大雑把に読むと、 要素とその子孫はボックスやテキストシーケンスを生成しません。 などになります。
- 説明
-
link
要素 は、現在の文書と外部のリソースとの関係を表します。link
要素 は、使用すると、作成者は自分の文書を他のリソースにリンクできます。
a要素と area要素によって作成されたハイパーリンクとは異なり、link要素によって作成されたハイパーリンクは、提案されたデフォルトのレンダリングをサポートするユーザーエージェントでは、デフォルトではドキュメントの一部として表示されません。また、CSSを使用して強制的に表示された場合でも、アクティブ化の動作はありません。代わりに、主にページまたはページのコンテンツを使用する他のソフトウェアで使用される可能性のあるセマンティック情報を提供します。さらに、ユーザーエージェントは、このようなハイパーリンクをたどるための独自の UI を提供できます。<!DOCTYPE html>
<html lang=
"ja"> <head>
<meta charset=
"utf-8"> <title>
link要素の例 - (Example of link element) | 離珠のHTMLでしぃ!</title> <meta name=
"author" content= "コータン (KOUTAN)"> <link rel=
"stylesheet" href= "./excss01.css"> <link rel=
"icon" href= "../favicon.ico" type= "image/vnd.microsoft.icon"> </head>
<body>
<h1>
link要素の例</h1> <p>
この例の link要素は、./excss01.css というスタイルシートをインポートすると指定しています。</p> </body>
</html>
このサンプルへのリンクです。
(./exlink.htm) - 参照元
-
参照元
- HTML Living Standard. 4.2.4 The link element (最終更新日 2025年8月5日)
- HTML Living Standard. 4.6 Links 4.6.7 Link types (最終更新日 2025年8月5日)
- HTML Living Standard. 15 Rendering 15.3.1 Hidden elements (最終更新日 2025年8月5日)
- HTML 5.3 W3C 初公開ワーキングドラフト. 4.2.4 The link element (W3Cワーキングドラフト、2017年12月14日)
- HTML 5.3 W3C 初公開ワーキングドラフト. 10. Rendering 10.3.1. Hidden elements (W3Cワーキングドラフト、2017年12月14日)
- HTML 5.2 W3C 勧告. 4.2.4 The link element (W3C勧告、2017年12月14日)
- HTML 5.2 W3C 勧告. 10.3.1. Hidden elements (W3C勧告、2017年12月14日)
- HTML 5.1 W3C 勧告. 4.2.4 The link element (W3C勧告、2016年11月1日)
- HTML 5.1 W3C 勧告. 10.3.1. Hidden elements (W3C勧告、2016年11月1日)
- HTML 5 W3C 勧告. 4.2.4 The link element (W3C勧告、2014年10月28日)
- HTML 5 W3C 勧告. 10.3.1. Hidden elements (W3C勧告、2014年10月28日)
- HTML 4.01 Specification W3C 勧告. 12.3 Document relationships: the LINK element (W3C勧告1999年12月24日)
- HTML 3.2 Reference Specification LINK (W3C勧告1997年1月14日)
- Hypertext Markup Language - 2.0 (November 1995)
- Hypertext Markup Language (HTML) (June 1993)
- <link>: 外部リソースへのリンク要素 - HTML: ハイパーテキストマークアップ言語 | MDN
- JSONデータ
-
JSON形式での、データのイメージです。
{
"link": {
"group": "Metadata",
"element": "- X EMPTY -- a media-independent link. (Void elements.) [Metadata|Flowlimited|Phrasinglimited] --",
"attlist": {
"%Global;": "",
"href": "%URI; #IMPLIED -- URI for linked resource --",
"hreflang": "%LanguageCode; #IMPLIED -- language code --",
"type": "%ContentType; #IMPLIED -- advisory content type --",
"rel": "%LinkTypes; #IMPLIED -- forward link types --",
"media": "%MediaDesc; #IMPLIED -- for rendering on these media --",
"crossorigin": "CDATA #IMPLIED -- How the element handles crossorigin requests --",
"integrity": "CDATA #IMPLIED -- Integrity metadata used in Subresource Integrity checks [SRI] --",
"referrerpolicy": "CDATA #IMPLIED -- Referrer policy for fetches initiated by the element --",
"sizes": "CDATA #IMPLIED -- Sizes of the icons (for rel='icon') --",
"imagesrcset": "CDATA #IMPLIED -- Images to use in different situations, e.g., high-resolution displays, small monitors, etc. (for rel='preload') --",
"imagesizes": "CDATA #IMPLIED -- Image sizes for different page layouts (for rel='preload') --",
"as": "CDATA #IMPLIED -- Potential destination for a preload request (for rel='preload' and rel='modulepreload') --",
"blocking": "CDATA #IMPLIED -- Whether the element is potentially render-blocking --",
"color": "CDATA #IMPLIED -- Color to use when customizing a site's icon (for rel='mask-icon') --",
"disabled": "CDATA #IMPLIED -- Whether the link is disabled --",
"fetchpriority": "CDATA #IMPLIED -- Sets the priority for fetches initiated by the element --",
},
"summary": "外部リソースにリンク (a media-independent link)",
"point": "現在の文書と外部のリソースとの関係を表します。",
"description": [
"使用すると、作成者は自分の文書を他のリソースにリンクできます。",
"a要素と area要素によって作成されたハイパーリンクとは異なり、link要素によって作成されたハイパーリンクは、提案されたデフォルトのレンダリングをサポートするユーザーエージェントでは、デフォルトではドキュメントの一部として表示されません。また、CSSを使用して強制的に表示された場合でも、アクティブ化の動作はありません。代わりに、主にページまたはページのコンテンツを使用する他のソフトウェアで使用される可能性のあるセマンティック情報を提供します。さらに、ユーザーエージェントは、このようなハイパーリンクをたどるための独自の UI を提供できます。",
],
"elementKind": "Void",
"categories": [
"Metadata",
"Flowlimited",
"Phrasinglimited",
],
"categoriessupplement": "itemprop属性が存在する場合、または body-ok のキーワードのみを含む rel属性が存在する場合は、フローコンテンツ, フレージングコンテンツ。",
"canUsedContexts": [
"parent (%Metadata)*",
"HEAD NOSCRIPT (LINK)*",
"parent (%Phrasing)*",
],
"usedsupplement": "ただし、フレージングコンテンツが期待される場所は、要素が本文内で許可されている場合に限ります。",
"contentModel": "%Nothing",
"tagOmission": [
"-",
"X",
],
"rendering": "Hidden",
"domInterface": "HTMLLinkElement",
"contentAttributes": {
"href": "ハイパーリンクのアドレス",
"crossorigin": "要素がクロスオリジンリクエストを処理する方法",
"rel": "ハイパーリンクを含むドキュメントと宛先リソースの関係",
"media": "該当するメディア",
"integrity": "サブリソース整合性チェックで使用される整合性メタデータ[SRI]",
"hreflang": "リンクされたリソースの言語",
"type": "参照されるリソースのタイプのヒント",
"referrerpolicy": "要素によって開始されたフェッチのリファラーポリシー",
"sizes": "アイコンのサイズ(rel ='icon'の場合)",
"imagesrcset": "高解像度ディスプレイ、小型モニターなど、さまざまな状況で使用する画像(rel ='preload'の場合)",
"imagesizes": "さまざまなページレイアウトの画像サイズ(rel ='preload'の場合)",
"as": "プリロード要求の潜在的な宛先(rel ='preload'およびrel='modulepreload'の場合)",
"blocking": "要素が潜在的にレンダリングをブロックしているかどうか",
"color": "サイトのアイコンをカスタマイズするときに使用する色(rel ='mask-icon'の場合)",
"disabled": "リンクが無効になっているかどうか",
"fetchpriority": "要素によって開始されるフェッチの優先順位",
"title": "この要素に特別なセマンティクスで、リンクのタイトル, CSSスタイルシートセット名。",
},
"attributessupplement": [
"charset属性がありましたが、廃止されました。代わりに、リンクされたリソースで HTTP `Content-Type` ヘッダーを使用して下さい。",
"methods属性がありましたが、廃止されました。代わりに HTTP OPTIONS 機能を使用して下さい。",
"rev属性がありましたが、廃止されました。代わりに、反対の用語を指定してrel属性を使用して下さい。 (たとえば、rev='made' の代わりに、rel='author' を使用します。)",
"urn属性がありましたが、廃止されました。代わりに href 属性を使用して、優先される永続識別子を指定します。",
"target属性がありましたが、廃止されました。不要です。 全く省略して下さい。",
],
"reference": [
{
"title": "HTML Living Standard. 4.2.4 The link element. Last Updated 5 August 2025",
"href": "https://html.spec.whatwg.org/multipage/semantics.html#the-link-element",
"heading": "HTML Living Standard. 4.2.4 The link element",
"sub": "最終更新日 2025年8月5日",
},
{
"title": "HTML Living Standard. 4.6 Links 4.6.7 Link types. Last Updated 5 August 2025",
"href": "https://html.spec.whatwg.org/multipage/links.html#linkTypes",
"heading": "HTML Living Standard. 4.6 Links 4.6.7 Link types",
"sub": "最終更新日 2025年8月5日",
},
{
"title": "HTML Living Standard. 15 Rendering 15.3.1 Hidden elements. Last Updated 5 August 2025",
"href": "https://html.spec.whatwg.org/multipage/rendering.html#hidden-elements",
"heading": "HTML Living Standard. 15 Rendering 15.3.1 Hidden elements",
"sub": "最終更新日 2025年8月5日",
},
{
"title": "HTML 5.3 W3C Working Draft. 4.2.4 The link element. W3C First Public Working Draft, 14 December 2017",
"href": "https://www.w3.org/TR/2017/WD-html53-20171214/document-metadata.html#the-link-element",
"heading": "HTML 5.3 W3C 初公開ワーキングドラフト. 4.2.4 The link element",
"sub": "W3Cワーキングドラフト、2017年12月14日",
},
{
"title": "HTML 5.3 W3C Working Draft. 10.3.1. Hidden elements. W3C First Public Working Draft, 14 December 2017",
"href": "https://www.w3.org/TR/2017/WD-html53-20171214/rendering.html#hidden-elements",
"heading": "HTML 5.3 W3C 初公開ワーキングドラフト. 10. Rendering 10.3.1. Hidden elements",
"sub": "W3Cワーキングドラフト、2017年12月14日",
},
{
"title": "HTML 5.2 W3C Recommendation. 4.2.4 The link element. W3C Recommendation, 14 December 2017.",
"href": "https://www.w3.org/TR/2017/REC-html52-20171214/document-metadata.html#the-link-element",
"heading": "HTML 5.2 W3C 勧告. 4.2.4 The link element",
"sub": "W3C勧告、2017年12月14日",
},
{
"title": "HTML 5.2 W3C Recommendation. 10.3.1. Hidden elements.",
"href": "https://www.w3.org/TR/2017/REC-html52-20171214/rendering.html#hidden-elements",
"heading": "HTML 5.2 W3C 勧告. 10.3.1. Hidden elements",
"sub": "W3C勧告、2017年12月14日",
},
{
"title": "HTML 5.1 W3C Recommendation. 4.2.4 The link element. W3C Recommendation, 1 November 2016.",
"href": "https://www.w3.org/TR/2016/REC-html51-20161101/document-metadata.html#the-link-element",
"heading": "HTML 5.1 W3C 勧告. 4.2.4 The link element",
"sub": "W3C勧告、2016年11月1日",
},
{
"title": "HTML 5.1 W3C Recommendation. 10.3.1. Hidden elements. W3C Recommendation, 1 November 2016.",
"href": "https://www.w3.org/TR/2016/REC-html51-20161101/rendering.html#hidden-elements",
"heading": "HTML 5.1 W3C 勧告. 10.3.1. Hidden elements",
"sub": "W3C勧告、2016年11月1日",
},
{
"title": "HTML 5 W3C Recommendation. 4.2.4 The link element. W3C Recommendation, 28 October 2014.",
"href": "https://www.w3.org/TR/2014/REC-html5-20141028/document-metadata.html#the-link-element",
"heading": "HTML 5 W3C 勧告. 4.2.4 The link element",
"sub": "W3C勧告、2014年10月28日",
},
{
"title": "HTML 5 W3C Recommendation. 10.3.1. Hidden elements. W3C Recommendation, 28 October 2014.",
"href": "https://www.w3.org/TR/2014/REC-html5-20141028/rendering.html#hidden-elements",
"heading": "HTML 5 W3C 勧告. 10.3.1. Hidden elements",
"sub": "W3C勧告、2014年10月28日",
},
{
"title": "HTML 4.01 Specification W3C Recommendation. 12.3 Document relationships: the LINK element. W3C Recommendation 24 December 1999.",
"href": "https://www.w3.org/TR/html401/struct/links.html#h-12.3",
"heading": "HTML 4.01 Specification W3C 勧告. 12.3 Document relationships: the LINK element",
"sub": "W3C勧告1999年12月24日",
},
{
"title": "HTML 3.2 Reference Specification. W3C Recommendation 14-Jan-1997.",
"href": "https://www.w3.org/TR/2018/SPSD-html32-20180315/#link",
"heading": "HTML 3.2 Reference Specification LINK",
"sub": "W3C勧告1997年1月14日",
},
{
"title": " Hypertext Markup Language - 2.0. November 1995.",
"href": "https://www.ietf.org/rfc/rfc1866.txt",
"heading": "Hypertext Markup Language - 2.0",
"sub": "November 1995",
},
{
"title": "Hypertext Markup Language (HTML). June 1993.",
"href": "https://www.w3.org/MarkUp/draft-ietf-iiir-html-01.txt",
"heading": "Hypertext Markup Language (HTML)",
"sub": "June 1993",
},
{
"title": "MDN Web Docs. HTML <link>: The External Resource Link element.",
"href": "https://developer.mozilla.org/ja/docs/Web/HTML/Element/link",
"heading": "<link>: 外部リソースへのリンク要素 - HTML: ハイパーテキストマークアップ言語 | MDN",
},
],
"version": {
"first": "HTML",
"latest": "HTML Living Standard",
},
"lastReviewed": "2025-08-10",
}
}
注意: 簡易に描画する為に、各項目の後ろに
,
を付与しています。JSON の形式では、末尾の項目の後には,
は付けません。 - 最終確認日
-
2025-08-10
2.使用できるコンテキスト
link要素は、
head要素に
配置できます。
<link>
フレージング
- <h1>
要素 - <h2>
要素 - <h3>
要素 - <h4>
要素 - <h5>
要素 - <h6>
要素 - <p>
要素 - <pre>
要素 - <output>
要素 - <progress>
要素 - <meter>
要素 - <label>
要素 - <datalist>
要素 - <body>
要素 - <section>
要素 - <nav>
要素 - <aside>
要素 - <article>
要素 - <header>
要素 - <footer>
要素 - <main>
要素 - <address>
要素 - <li>
要素 - <dt>
要素 - <dd>
要素 - <caption>
要素 - <th>
要素 - <td>
要素 - <form>
要素 - <fieldset>
要素 - <search>
要素 - <blockquote>
要素 - <figure>
要素 - <figcaption>
要素 - <div>
要素 - <dialog>
要素 - <abbr>
要素 - <b>
要素 - <bdi>
要素 - <bdo>
要素 - <cite>
要素 - <code>
要素 - <data>
要素 - <dfn>
要素 - <em>
要素 - <i>
要素 - <kbd>
要素 - <mark>
要素 - <q>
要素 - <s>
要素 - <samp>
要素 - <small>
要素 - <span>
要素 - <strong>
要素 - <sub>
要素 - <sup>
要素 - <u>
要素 - <var>
要素
<link>
<head>
itemprop
<head>
<meta charset=
"utf-8"> <title>
離珠のHTMLでしぃ!</title> <link rel=
"icon" href= "../favicon.ico" type= "image/vnd.microsoft.icon"> </head>
メタデータ
<head>
<meta charset=
"utf-8"> <title>
離珠のHTMLでしぃ!</title> <link rel=
"stylesheet" href= "./risyu01.css"> <noscript>
<link rel=
"stylesheet" href= "./noscript01.css"> </noscript>
</head>
<body>
<link rel=
"stylesheet" href= "./risyu02.css"> <noscript>
<link rel=
"stylesheet" href= "./noscript02.css"> </noscript>
</body>
フレージング'stylesheet'
だけである<link>'stylesheet'
は、 body-ok です。
フレージング
3.コンテンツモデル
link要素は、
配置可能なコンテンツは
ありません。
<link>
<link>
<link>
4.コンテンツ属性
link要素は、
グローバル属性と、
rel属性,
href属性,
type属性,
media属性,
integrity属性,
crossorigin属性,
referrerpolicy属性,
sizes属性,
as属性,
imagesrcset属性,
imagesizes属性,
color属性,
hreflang属性,
disabled属性,
blocking属性,
fetchpriority属性 を
配置できます。
<link>
また、グローバル属性である title
<link>
<link>
charset
methods
rev
urn
target
rel属性
<link rel=
"stylesheet" href="./risyu.css">
rel
この例では、'stylesheet'
を属性値で記しています。'stylesheet'
は、「スタイルシートをインポートします。」を意味します。尚、スタイルシートの場合は、type'text/css'
は省略できます。
リンク種別は、HTML Living Standard の Link types に記述(説明)があります。「HTML Living Standard - 4.6.7 Link types」
href属性
<link rel=
"stylesheet" href= "./risyu.css" >
href
type属性
<link rel=
"stylesheet" href= "./risyu.css" type= "text/css" >
type
relstylesheet
キーワードによって指定されるリソースのデフォルトのタイプは text/css
です。
rel
media属性
<link rel=
"stylesheet" href= "./risyu.css" media= "screen and (max-width: 640px)" >
media
- media : 属性名
- "screen and (max-width: 640px)" : 属性値 (メディアクエリ)
- screen : メディアタイプ
- and : 論理演算子
- (max-width: 640px) : メディア特性
メディアタイプは、端末の全般的なカテゴリを説明します。all
(すべてのデバイス), print
(プリンタ), screen
(プリンタ以外のすべてのデバイス), tty
(テレタイプなど), tv
(テレビ), projection
(プロジェクター), handheld
(携帯電話), braille
(点字ディスプレイ), embossed
(点字プリンタ), aural
(音声デバイス), speech
(音声出力機器) などがあります。
メディア特性は、特定のユーザーエージェントや、出力端末や、環境などの特性を記述します。特性式は、括弧で囲む必要があります。
論理演算子は、and 演算子(論理積), カンマ区切り(論理和), not 演算子(論理否定), only 演算子(古いブラウザー対応) があります。
integrity属性
<link rel=
"stylesheet" href= "https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.0/normalize.css" integrity= "sha384-jTFzRHnGayPcZHkUx5hTuWbygQevlGFimHdpRHicjyJXGyyjcioudSScb7/YN0PE" crossorigin="anonymous">
integrity
この属性は、stylesheet
、preload
、または modulepreload
キーワードを含むrel
crossorigin属性
<link rel=
"stylesheet" href= "https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.0/normalize.css" integrity= "sha384-jTFzRHnGayPcZHkUx5hTuWbygQevlGFimHdpRHicjyJXGyyjcioudSScb7/YN0PE" crossorigin= "anonymous" >
crossoriginanonymous
(匿名), use-credentials
(資格情報を使用する) があります。
referrerpolicy属性
<link rel=
"stylesheet" href= "./risyu.css" referrerpolicy= "no-referrer-when-downgrade" >
referrerpolicy
sizes属性
<link rel=
"icon" href= "../favicon.ico" type= "image/vnd.microsoft.icon" sizes= "16x16" >
sizes
この属性は、icon
キーワードまたは apple-touch-icon キーワードを指定する rel
as属性
<link rel=
"preload" href= "sample640.png" as= "image" imagesrcset="sample320.png 320w, sample640.png 640w, sample1280.png 1280w" imagesizes= "10vw"> <body>
<img src="sample640.png" srcset="sample320.png 320w, sample640.png 640w, sample1280.png 1280w" sizes="10vw" alt="サンプル画像">
as
この属性は、preload
キーワードまたは modulepreload
キーワードを指定するrel
imagesrcset属性
<link rel=
"preload" href= "sample640.png" as= "image" imagesrcset= "sample320.png 320w, sample640.png 640w, sample1280.png 1280w" imagesizes="10vw"> <body>
<img src="sample640.png" srcset="sample320.png 320w, sample640.png 640w, sample1280.png 1280w" sizes="10vw" alt="サンプル画像">
imagesrcset
この例の 320w は幅記述子といい、幅ディスクリプタ値と小文字W で記述しています。他に画素密度記述子という画素密度記述子の値と小文字X での記述の仕方もあります。
この属性は、preload
キーワードを指定するrelimage
キーワードを指定するas
imagesizes属性
<link rel=
"preload" href= "sample640.png" as= "image" imagesrcset= "sample320.png 320w, sample640.png 640w, sample1280.png 1280w" imagesizes= "10vw" ><body>
<img src="sample640.png" srcset="sample320.png 320w, sample640.png 640w, sample1280.png 1280w" sizes="10vw" alt="サンプル画像">
imagesizes
この属性は、preload
キーワードを指定するrelimage
キーワードを指定するas
color属性
<link rel=
"mask-icon" href= "./risyu.svg" color= "#ff0000" >
color
この属性は、mask-icon
キーワードを指定するrel
hreflang属性
<link rel=
"alternate" href= "./alternate.htm" hreflang= "en" >
hreflang
disabled属性
<link rel=
"stylesheet" href= "./risyu.css" disabled>
disabled
この属性は、stylesheet
キーワードを指定する rel
blocking属性
<link rel=
"stylesheet" href= "./risyu.css" blocking= "render" >
blockingrender
キーワードを指定した場合、要素は潜在的にレンダリングブロックになります。これは個々の要素で定義されます。
デフォルトでは、要素は暗黙的にレンダリングをブロックする可能性はありません。
この属性は、stylesheet
キーワードを指定するrel
fetchpriority属性
<link rel=
"stylesheet" href= "./risyu.css" fetchpriority= "high" >
fetchpriority
フェッチhigh
: 同じ宛先を持つ他のリソースに対して優先度の高いフェッチを通知します。
low
: 同じ宛先を持つ他のリソースに対して優先度の低いフェッチを通知します。
auto
: 同じ宛先を持つ他のリソースに対するフェッチ優先度の自動決定を通知します。
属性の欠損値のデフォルトと無効な値のデフォルトは両方とも auto
です。
title属性
<link rel=
"stylesheet" href= "./risyu.css" title= "Recommendation" ><link rel=
"alternate stylesheet" href= "./alternate.css" title= "Alternate" >
title
<link>
5.DOM インターフェイス
link要素を、
直接表す
プロパティは
ありません。
<link>document
のquerySelectorAll()メソッドを用いる方法があります。要素link
と指定して、<link>
NodeListオブジェクトは、配列の様に扱う事が出来ますが、for...in を使うとlength
HTMLLinkElement インターフェイスは、HTMLElement インターフェイスを継承しつつ、各IDL属性が追加されています。
他には、document
のquerySelector()メソッドを用いて、条件に一致する文書内で最初の一件を取得するとか、iddocument
のgetElementById()メソッドを用いるとか、namedocument
のgetElementsByName()メソッドを用いるとか、状況, 目的によりいろいろあります。
このページのメニューは、
〇〇
です。
<p>このページのメニューは、
<code id="JCD501">〇〇</code>です。</p>
<script>
document
.addEventListener( "DOMContentLoaded", function() { let _loJsList = document
.createElement( "ol"); let _llJsLink = document
.querySelectorAll( ;"link[type='text/html']") for (var _lnJsIdx = 0; _lnJsIdx < _llJsLink
.length; _lnJsIdx++) { let _loJsItem = document
.createElement( "li"); let _loJsAnchor = document
.createElement( "a"); _loJsAnchor
.setAttribute( "href", _llJsLink[_lnJsIdx] .getAttribute( "href")); _loJsAnchor
.textContent = _llJsLink[_lnJsIdx] .getAttribute( "title"); _loJsItem
.appendChild( _loJsAnchor); _loJsList
.appendChild( _loJsItem); }
if (_loJsList
.childElementCount) { document
.getElementById( "JCD501") .textContent = ""; }
document
.getElementById( "JCD501") .appendChild( _loJsList); });
</script>
typetext/html
である<link>
6.アクセシビリティ
link要素の
暗黙的な
ARIAセマンティクスは
ありません。
<link>No corresponding role
とマークされている要素は、ARIAの暗黙的なセマンティクスを持ちませんが、意味を持ちます。この意味は、ARIAでは提供されていないロール、ステート、プロパティで表現され、アクセシビリティ
作成者が<link>No role
(役割なし) です。作成者は暗黙的な
指定できる aria-*
つまり、<link>
7.レンダリング
link {
display: none;
}
<link>none
であり、この要素とその子孫はボックスやテキスト
現在の文書と外部のリソースとの関係を表すメタデータを記述する為の要素なので、ビジュアルメディアでボックスを生成する様な指定は行わないのが良いでしょう。 外部のリソースを埋め込む訳ではありません。埋め込む機能の要素は、他にあります。
.sdvPseudo701 link, .sdvPseudo701 link::before, .sdvPseudo701 link::after {
display: block;
}
.sdvPseudo701 link::before {
content: attr(rel);
}
.sdvPseudo701 link::after {
content: attr(href);
}
<div class=
"sdvPseudo701"> <link rel=
"stylesheet" href= "./dummy.css"> </div>
メタデータを記述する空要素を表示する例のつもりです。表示する予定であれば、メタデータとしてではなく表示用でもあるデータとして別の要素で記述しておくのが良いかと思います。例として記述してみても、なんか変かなと思います。まぁ技術的な可能性としての知識として見てください。
8.気を付ける点
記述順
<link>
たとえば、CSS では優先度が同じ場合は記述順の後の物が採用されるなどです。
この場合でも、効果範囲は記述箇所以降ではなくて文書全体です。
簡単な転用
<link>
簡単という意味では、当該ソースをそのままでも読み込む外部のリソースの内容を変えるだけで処理内容を変える事が出来ます。 つまり導入当初と運用時で同じ保証はありません。簡単であるが故の影響範囲の大きさ。管理が面倒になる点に注意しましょう。
非同期読み込み
ページパフォーマンスを上げる為に、ページレンダリングをブロックしない方法でCSSをロードする方法が検討されます。
デフォルトではブラウザは外部CSSを同期的に読み込む為、CSSがダウンロード・パースされている間は全てのページレンダリングが停止し、その為にレンダリングに遅延が発生します。
その対応策の 1 つが以下の記述です。
<link rel=
"stylesheet" href= "./risyu.css" media= "print" onload= "this.media='all'">
同期的に読み込む必要がある部分とファイルを分ける必要があるのと、スクリプトが有効である必要がある点が、余計に考慮しなければいけない点ですが、まぁ検討する価値はあると思います。
参考までに、このページでも採用しています。サイトとしては、採用していません。