意識している?HTML の「タグ」と「要素」の違い
ブログ記事を書くとき、正しい言葉の使い方や表記の統一などに気を付けていますが、早速、壁にぶつかりました。それが、HTML の「タグ」と「要素」です。「p
タグは段落を表します」と表現するのが正しいのか、「p
要素は段落を表します」と表現するのが正しいのか、またはどちらも同義なのか、はたまたどちらも間違いなのか……
あなたは HTML の「タグ」と「要素」の違いを意識していますか?
W3Cの草案(Wolking Draft)
「タグ」について、W3C の草案に書かれていました。
Tags are used to delimit the start and end of elements in markup. Elements have a start tag to indicate where they begin. Non-void elements have an end tag to indicate where they end.
ざっくり意訳すると、
「タグ」は、マークアップ内の要素の始めと終わりを区切るために使用されます。「要素」は、それが始まる場所を示すための「開始タグ」を持ちます。空要素ではない要素は、それが終わる場所を示すための「終了タグ」を持ちます。
と述べられています。よく分からないですね……
「タグ」と「要素」の違い
「タグ 要素 違い」で検索すると、以下の二つのサイトで分かりやすく解説されています。
例えば、<p>段落を表す</p>
は以下の表のようになります。
<p>段落を表す</p> | |
---|---|
要素 | <p>段落を表す</p> |
開始タグ | <p> |
要素の内容 | 段落を表す |
終了タグ | </p> |
つまり、「要素」とは、「開始タグ」で始まり「要素の内容」を含む文章全体のことを指します。また、「タグ」は「要素」の始めと終わりを表現する単なる文字列のことを指します。
したがって、冒頭の問いの答えは、
- 「
p
タグは段落を表します」と表現するのは間違い - 「
p
要素は段落を表します」と表現するのは正しい
となります。
「p
タグは段落を表します」という表現の「p
タグ」は単なる要素の始めを表す「開始タグ」であり、p
タグ自体では段落を表しません。代わりに、「<p>
タグと </p>
タグで括ると、段落を表します」などと表現すると正しいでしょう。
雑感
開始タグ自体に言及しない限り、「○要素」と表現した方が汎用性がありそうです。