id グローバル属性は、文書全体で一意でなければならない識別子 (ID) を定義します。この属性の用途は、リンク (フラグメント識別子を使用)、スクリプト、スタイル (CSS を使用) で要素を特定することです。
この属性の値は Opaque String です。これは、Web 作者は情報を伝えるためにこの属性を使用してはならないということです。セマンティックな意味といった特別な意味合いを、文字列から得てはいけません。
この属性の値にホワイトスペースを含めていはいけません。ブラウザはホワイトスペース文字を含む不適合な ID を、ホワイトスペース文字が ID の一部であるかのように扱います。空白区切りで並べた値を受け入れる class 属性とは対照的に、要素は id 属性で定義された ID をひとつだけ持つことができます。なお要素は複数の ID を持つこともできますが、他の ID は要素の DOM インターフェイスによるスクリプトとの接続などにおいて、別の意味を持つものとして設定されます。
注記: ASCII 文字、数字、'_'
、'-'
、'.'
以外の文字は HTML 4 で許容されていなかったため、使用した場合に互換性の問題を引き起こす可能性があります。この制約は HTML 5 で外されましたが、互換性のために ID はこれらの文字で始めるようにしましょう。
仕様
仕様書 | 策定状況 | コメント |
---|---|---|
WHATWG HTML Living Standard The definition of 'id' in that specification. |
Living Standard | 最新のスナップショットである HTML5.1 から変更なし。 |
HTML5.1 The definition of 'id' in that specification. |
草案 | WHATWG HTML Living Standard のスナップショットであり、HTML5 から変更はありません。 |
HTML5 The definition of 'id' in that specification. |
勧告 | WHATWG HTML Living Standard のスナップショットであり、先頭の文字以外で '_' 、'-' 、'.' が使用可能になりした。また、真にグローバルな属性になりました。 |
HTML 4.01 Specification The definition of 'id' in that specification. |
勧告 | <base> 、<head> 、<html> 、<meta> 、<script> 、<style> 、<title> を除くすべての要素でサポートします。 |
ブラウザ実装状況
機能 | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
基本サポート | (有) | (有)[1] | (有) | (有) | (有) |
機能 | Android | Android 版 Chrome | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
基本サポート | (有) | (有) | (有)[1] | (有) | (有) | (有) |
[1] id は Firefox 32 以降に限り、真にグローバルな属性です。
関連情報
- すべてのグローバル属性。
Element.id
は、この属性を反映します。