コンテンツ・モデル
Updated / Published
コンテンツ・モデル(内容モデル)とは、要素ごとにメタデータ・コンテンツ、フロー・コンテンツ、セクショニング・コンテンツ、ヘッディング・コンテンツ、フレージング・コンテンツ、エンベッディッド・コンテンツ、インタラクティブ・コンテンツ、パルパブル・コンテンツのいずれか(複数あり)にグループ分けがなされており、従来のインライン要素にブロックレベル要素を含めることができないといった概念と同様、その要素にはどんな内容(要素およびテキスト)を含めることができるのかを定義したものです。
<!DOCTYPE html>
必須。この宣言はブラウザのレンダリングモードを標準準拠モードにする手段として用い、公式のDTDは存在しない。
<html>
(省略可)<head>
(省略可)メタデータ・コンテンツ
<base />
- 空
<link />
- 空
<meta />
- 空
<noscript>-</noscript>
- スクリプトが無効な場合:0個以上の
link
要素,meta
要素,style
要素 - スクリプトが有効な場合:テキスト
- スクリプトが無効な場合:0個以上の
<script>-</script>
src
属性がある場合:
空、もしくは著作権情報やAPI 情報といったスクリプトの説明文src
属性がない場合:
JavaScriptのコード等(text/javascript
以外を用いるのであれば、type
属性は必須)
<style>-</style>
- CSSのコード等(
text/css
以外を用いるのであれば、type
属性は必須) <title>-</title>
- テキストのみ
必須要素であり、必ず1個だけ定義
</head>
(省略可)<body>
(省略可)フロー・コンテンツ
<a>-</a>
- トランスペアレント(ただし、インタラクティブ・コンテンツに該当する要素を除く)
<address>-</address>
- フロー・コンテンツ(ただし、ヘッディング・コンテンツとセクショニング・コンテンツにも該当する要素,
address
要素,header
要素,footer
要素を除く) <article>-</article>
- フロー・コンテンツ
<aside>-</aside>
- フロー・コンテンツ
<audio>-</audio>
src
属性がある場合:
トランスペアレント(ただし、video
要素,audio
要素を除く)src
属性がない場合:
1個以上のsource
要素<source />
- 空
<b>-</b>
- フレージング・コンテンツ
<bdi>-</bdi>
- フレージング・コンテンツ
<bdo>-</bdo>
- フレージング・コンテンツ
<blockquote>-</blockquote>
- フロー・コンテンツ
<br />
- 空
<button>-</button>
- フレージング・コンテンツ(ただし、インタラクティブ・コンテンツにも該当する要素を除く)
<canvas>-</canvas>
- トランスペアレント
<cite>-</cite>
- フレージング・コンテンツ
<code>-</code>
- フレージング・コンテンツ
<data>-</data>
- フレージング・コンテンツ
<datalist>-</datalist>
- フレージング・コンテンツ
- 0個以上の
option
要素
<del>-</del>
- トランスペアレント
<details>-</details>
- 最初に1つの
summary
要素 summary
要素の直後(兄弟要素関係)にフロー・コンテンツ
<summary>-</summary>
- フレージング・コンテンツ
- 最初に1つの
<dfn>-</dfn>
- フレージング・コンテンツ(ただし、
dfn
要素を除く) <div>-</div>
- フロー・コンテンツ
<dl>-</dl>
- 1個以上の
dt
要素,dd
要素<dt>-</dt>
- フロー・コンテンツ(ただし、
header
,footer
,article
,aside
,nav
,section
,h1-h6
要素を除く) <dd>-</dd>
- フロー・コンテンツ
<em>-</em>
- フレージング・コンテンツ
<embed />
- 空
<fieldset>-</fieldset>
- 最初に1個の
legend
要素 legend
要素の直後(兄弟要素関係)にフロー・コンテンツ
<legend>-</legend>
- フレージング・コンテンツ
- 最初に1個の
<figure>-</figure>
- 最初に1個の
figcaption
要素、その直後にフロー・コンテンツ - またはフロー・コンテンツの後に1つの
figcaption
要素 - またはフロー・コンテンツ
<figcaption>-</figcaption>
- フロー・コンテンツ
- 最初に1個の
<footer>-</footer>
- フロー・コンテンツ(ただし、
header
要素,footer
要素を除く) <form>-</form>
- フロー・コンテンツ(ただし、
form
要素を除く) <h1-h6>-</h1-h6>
- フレージング・コンテンツ
<header>-</header>
- フロー・コンテンツ(ただし、
header
要素,footer
要素を除く) <hr />
- 空要素
<i>-</i>
- フレージング・コンテンツ
<iframe>-</iframe>
- テキストのみ
<img />
- 空
<input />
- 空
<ins>-</ins>
- トランスペアレント
<kbd>-</kbd>
- フレージング・コンテンツ
<keygen />
- 空
<label>-</label>
- フレージング・コンテンツ(ただし、
label
要素自身と、そのラベル内容と関係のないbutton
,keygen
,input
,meter
,output
,progress
,select
,textarea
要素を除く) <main>-</main>
- フロー・コンテンツ(ただし、
article
,aside
,footer
,header
,nav
要素の子孫としては使えない) <map>-</map>
- トランスペアレント
<area />
- 空
<mark>-</mark>
- フレージング・コンテンツ
<math>-</math>
- インラインMathMLの要素
<meter>-</meter>
- フレージング・コンテンツ(ただし、
meter
要素を除く) <nav>-</nav>
- フロー・コンテンツ
<noscript>-</noscript>
- トランスペアレント(ただし、
noscript
要素を除く) <object>-</object>
- 0個以上の
param
要素に続き、トランスペアレント(ただし、フロー・コンテンツが入る場合は、最初にparam
要素、その後にフロー・コンテンツが続く)<param />
- 空
<ol>-</ol>
- 0個以上の
li
要素<li>-</li>
- フロー・コンテンツ
<output>-</output>
- フレージング・コンテンツ
<p>-</p>
- フレージング・コンテンツ
<pre>-</pre>
- フレージング・コンテンツ
<progress>-</progress>
- フレージング・コンテンツ(ただし、
progress
要素を除く) <q>-</q>
- フレージング・コンテンツ
<ruby>-</ruby>
- 次の組み合わせを1組以上
- ルビを振られるテキスト
ruby
要素を含まないフレージング・コンテンツ- または
ruby
要素を含まない単独のruby
要素
- ルビとなるテキスト
- 1個以上の
rt
要素 - または
rp
要素の後に1個以上のrt
要素が続き、そのrt
要素の後ろにrp
要素が続く
- 1個以上の
<rp>-</rp>
- フレージング・コンテンツ
<rt>-</rt>
- フレージング・コンテンツ
- ルビを振られるテキスト
<s>-</s>
- フレージング・コンテンツ
<samp>-</samp>
- フレージング・コンテンツ
<script>-</script>
src
属性がある場合:
空、もしくは著作権情報やAPI 情報といったスクリプトの説明文src
属性がない場合:
JavaScriptのコード等(text/javascript
以外を用いるのであれば、type
属性は必須)
<section>-</section>
- フロー・コンテンツ(章・節・項を表す対のヘッディング・コンテンツを必ず伴うこと)
<select>-</select>
- 0個以上の
option
要素,optgroup
要素<option>-</option>
- テキストのみ
<optgroup>-</optgroup>
label
属性必須、0個以上のoption
要素<option>-</option>
- テキストのみ
<small>-</small>
- フレージング・コンテンツ
<span>-</span>
- フレージング・コンテンツ
<strong>-</strong>
- フレージング・コンテンツ
<style>-</style>
- CSSのコード等(
scoped
属性必須、text/css
以外を用いるのであればtype
属性は必須) <sub>-</sub>
- フレージング・コンテンツ
<sup>-</sup>
- フレージング・コンテンツ
<svg>-</svg>
- インラインSVGの要素
<table>-</table>
caption
要素が0個、または1個- 0個以上の
col
要素、または 0個以上のcolgroup
要素 thead
要素が0個、または1個tfoot
要素が0個、または1個- 1個以上の
tbody
要素、または1個以上のtr
要素
<caption>-</caption>
- フロー・コンテンツ(ただし、
table
要素を除く) <col />
- 空
<colgroup>-</colgroup>
span
属性がある場合:空span
属性がある場合:0個以上のcol
要素<col />
- 空
<thead>-</thead>
- 0個以上の
tr
要素<tr>-</tr>
- 0個以上の
th
要素<th>-</th>
- フレージング・コンテンツ
<tfoot>-</tfoot>
- 0個以上の
tr
要素<tr>-</tr>
- 0個以上の
td
要素,th
要素<th>-</th>
- フレージング・コンテンツ
<td>-</td>
- フロー・コンテンツ
<tbody>-</tbody>
- 0個以上の
tr
要素<tr>-</tr>
- 0個以上の
td
要素,th
要素<th>-</th>
- フレージング・コンテンツ
<td>-</td>
- フロー・コンテンツ
<tr>-</tr>
- 0個以上の
td
要素,th
要素<th>-</th>
- フレージング・コンテンツ
<td>-</td>
- フロー・コンテンツ
<textarea>-</textarea>
- テキストのみ
<time>-</time>
- フレージング・コンテンツ(ただし、
time
要素を除く) <ul>-</ul>
- 0個以上の
li
要素<li>-</li>
- フロー・コンテンツ
<u>-</u>
- フレージング・コンテンツ
<var>-</var>
- フレージング・コンテンツ
<video>-</video>
src
属性がある場合:
トランスペアレント(ただし、video
要素,audio
要素を除く)src
属性がない場合:
1個以上のsource
要素に続き、トランスペアレント(ただし、video
要素,audio
要素を除く)<source />
- 空
<wbr />
- 空
- テキスト
- テキストノードのこと
セクショニング・コンテンツ
<article>-</article>
- フロー・コンテンツ
<aside>-</aside>
- フロー・コンテンツ
<nav>-</nav>
- フロー・コンテンツ
<section>-</section>
- フロー・コンテンツ(章・節・項を表す対のヘッディング・コンテンツを必ず伴うこと)
ヘッディング・コンテンツ
<h1-h6>-</h1-h6>
- フレージング・コンテンツ
フレージング・コンテンツ
<a>-</a>
- 子孫要素にフレージング・コンテンツしか含んでいない場合に限る、コンテンツ・モデルはフレージング・コンテンツ(ただし、インタラクティブ・コンテンツに該当する要素を除く)
<abbr>-</abbr>
- フレージング・コンテンツ
<audio>-</audio>
src
属性がある場合:
フレージング・コンテンツ(ただし、video
要素,audio
要素を除く)src
属性がない場合:
1個以上のsource
要素<source />
- 空
<b>-</b>
- フレージング・コンテンツ
<bdi>-</bdi>
- フレージング・コンテンツ
<bdo>-</bdo>
- フレージング・コンテンツ
<br />
- 空
<button>-</button>
- フレージング・コンテンツ(ただし、インタラクティブ・コンテンツにも該当する要素を除く)
<canvas>-</canvas>
- フレージング・コンテンツ
<cite>-</cite>
- フレージング・コンテンツ
<code>-</code>
- フレージング・コンテンツ
<data>-</data>
- フレージング・コンテンツ
<del>-</del>
- 子孫要素にフレージング・コンテンツしか含んでいない場合に限る、コンテンツ・モデルはフレージング・コンテンツ
<details>-</details>
- 最初に1つの
summary
要素 summary
要素の直後(兄弟要素関係)にフレージング・コンテンツ
<summary>-</summary>
- フレージング・コンテンツ
- 最初に1つの
<dfn>-</dfn>
- フレージング・コンテンツ(ただし、
dfn
要素を除く) <em>-</em>
- フレージング・コンテンツ
<embed />
- 空
<i>-</i>
- フレージング・コンテンツ
<iframe>-</iframe>
- テキストのみ
<img />
- 空
<input />
- 空
<ins>-</ins>
- 子孫要素にフレージング・コンテンツしか含んでいない場合に限る、コンテンツ・モデルはフレージング・コンテンツ
<kbd>-</kbd>
- フレージング・コンテンツ
<keygen />
- 空
<label>-</label>
- フレージング・コンテンツ(ただし、
label
要素自身と、そのラベル内容と関係のないbutton
,keygen
,input
,meter
,output
,progress
,select
,textarea
要素を除く) <map>-</map>
- 子孫要素にフレージング・コンテンツしか含んでいない場合に限る、コンテンツ・モデルはフレージング・コンテンツ
<area />
- 空
<mark>-</mark>
- フレージング・コンテンツ
<math>-</math>
- インラインMathMLの要素
<meter>-</meter>
- フレージング・コンテンツ(ただし、
meter
要素を除く) <noscript>-</noscript>
- フレージング・コンテンツ(ただし、
noscript
要素を除く) <object>-</object>
- 0個以上の
param
要素に続き、フレージング・コンテンツ<param />
- 空
<output>-</output>
- フレージング・コンテンツ
<progress>-</progress>
- フレージング・コンテンツ(ただし、
progress
要素を除く) <q>-</q>
- フレージング・コンテンツ
<ruby>-</ruby>
- 次の組み合わせを1組以上
- ルビを振られるテキスト
ruby
要素を含まないフレージング・コンテンツ- または
ruby
要素を含まない単独のruby
要素
- ルビとなるテキスト
- 1個以上の
rt
要素 - または
rp
要素の後に1個以上のrt
要素が続き、そのrt
要素の後ろにrp
要素が続く
- 1個以上の
<rp>-</rp>
- フレージング・コンテンツ
<rt>-</rt>
- フレージング・コンテンツ
- ルビを振られるテキスト
<s>-</s>
- フレージング・コンテンツ
<samp>-</samp>
- フレージング・コンテンツ
<script>-</script>
src
属性がある場合:
空、もしくは著作権情報やAPI 情報といったスクリプトの説明文src
属性がない場合:
JavaScriptのコード等(text/javascript
以外を用いるのであれば、type
属性は必須)
<select>-</select>
- 0個以上の
option
要素,optgroup
要素<option>-</option>
- テキストのみ
<optgroup>-</optgroup>
label
属性必須、0個以上のoption
要素<option>-</option>
- テキストのみ
<small>-</small>
- フレージング・コンテンツ
<span>-</span>
- フレージング・コンテンツ
<strong>-</strong>
- フレージング・コンテンツ
<style>-</style>
- CSSのコード等(
scoped
属性必須、text/css
以外を用いるのであればtype
属性は必須) <sub>-</sub>
- フレージング・コンテンツ
<sup>-</sup>
- フレージング・コンテンツ
<svg>-</svg>
- インラインSVGの要素
<textarea>-</textarea>
- テキストのみ
<time>-</time>
- フレージング・コンテンツ(ただし、
time
要素を除く) <u>-</u>
- フレージング・コンテンツ
<var>-</var>
- フレージング・コンテンツ
<video>-</video>
src
属性がある場合:
フレージング・コンテンツ(ただし、video
要素,audio
要素を除く)src
属性がない場合:
1個以上のsource
要素に続き、フレージング・コンテンツ(ただし、video
要素,audio
要素を除く)<source />
- 空
<wbr />
- 空
- テキスト
- テキストノードのこと
エンベッディッド・コンテンツ
<audio>-</audio>
src
属性がある場合:
トランスペアレント(ただし、video
要素,audio
要素を除く)src
属性がない場合:
1個以上のsource
要素<source />
- 空
<canvas>-</canvas>
- トランスペアレント
<embed />
- 空
<iframe>-</iframe>
- テキストのみ
<img />
- 空
<math>-</math>
- インラインMathMLの要素
<object>-</object>
- 0個以上の
param
要素に続き、トランスペアレント(ただし、フロー・コンテンツが入る場合は、最初にparam
要素、その後にフロー・コンテンツが続く)<param />
- 空
<svg>-</svg>
- インラインSVGの要素
<video>-</video>
src
属性がある場合:
トランスペアレント(ただし、video
要素,audio
要素を除く)src
属性がない場合:
1個以上のsource
要素に続き、トランスペアレント(ただし、video
要素,audio
要素を除く)<source />
- 空
インタラクティブ・コンテンツ
<a>-</a>
- トランスペアレント(ただし、インタラクティブ・コンテンツに該当する要素を除く)
<audio>-</audio>
controls
属性が指定された場合に限る、コンテンツ・モデルはsrc
属性がある場合:
トランスペアレント(ただし、video
要素,audio
要素を除く)src
属性がない場合:
1個以上のsource
要素<source />
- 空
<button>-</button>
- フレージング・コンテンツ(ただし、 インタラクティブ・コンテンツにも該当する要素を除く)
<details>-</details>
- 最初に1つの
summary
要素 summary
要素の直後(兄弟要素関係)にフロー・コンテンツ
<summary>-</summary>
- フレージング・コンテンツ
- 最初に1つの
<embed />
- 空
<iframe>-</iframe>
- テキストのみ
<img />
usemap
属性が指定された場合に限る、コンテンツ・モデルは空<input />
type
属性が"hidden
"でない場合に限る、コンテンツ・モデルは空<keygen />
- 空
<label>-</label>
- フレージング・コンテンツ(ただし、
label
要素自身と、そのラベル内容と関係のないbutton
,keygen
,input
,meter
,output
,progress
,select
,textarea
要素を除く) <object>-</object>
usemap
属性が指定された場合に限る、コンテンツ・モデルは
0個以上のparam
要素に続き、トランスペアレント(ただし、フロー・コンテンツが入る場合は、最初にparam
要素、その後にフロー・コンテンツが続く)<param />
- 空
<select>-</select>
- 0個以上の
option
要素,optgroup
要素<option>-</option>
- テキストのみ
<optgroup>-</optgroup>
label
属性必須、0個以上のoption
要素<option>-</option>
- テキストのみ
<textarea>-</textarea>
- テキストのみ
<video>-</video>
controls
属性が指定された場合に限る、コンテンツ・モデルはsrc
属性がある場合:
トランスペアレント(ただし、video
要素,audio
要素を除く)src
属性がない場合:
1個以上のsource
要素に続き、トランスペアレント(ただし、video
要素,audio
要素を除く)<source />
- 空
パルパブル・コンテンツ
<a>-</a>
- トランスペアレント(ただし、インタラクティブ・コンテンツに該当する要素を除く)
<abbr>-</abbr>
- フレージング・コンテンツ
<address>-</address>
- フロー・コンテンツ(ただし、ヘッディング・コンテンツとセクショニング・コンテンツにも該当する要素,
address
要素,header
要素,footer
要素を除く) <article>-</article>
- フロー・コンテンツ
<aside>-</aside>
- フロー・コンテンツ
<audio>-</audio>
controls
属性が指定された場合に限る、コンテンツ・モデルはsrc
属性がある場合:
トランスペアレント(ただし、video
要素,audio
要素を除く)src
属性がない場合:
1個以上のsource
要素<source />
- 空
<b>-</b>
- フレージング・コンテンツ
<bdi>-</bdi>
- フレージング・コンテンツ
<bdo>-</bdo>
- フレージング・コンテンツ
<blockquote>-</blockquote>
- フロー・コンテンツ
<button>-</button>
- フレージング・コンテンツ(ただし、インタラクティブ・コンテンツにも該当する要素を除く)
<canvas>-</canvas>
- トランスペアレント
<cite>-</cite>
- フレージング・コンテンツ
<code>-</code>
- フレージング・コンテンツ
<data>-</data>
- フレージング・コンテンツ
<details>-</details>
- 最初に1つの
summary
要素 summary
要素の直後(兄弟要素関係)にフロー・コンテンツ
<summary>-</summary>
- フレージング・コンテンツ
- 最初に1つの
<dfn>-</dfn>
- フレージング・コンテンツ(ただし、
dfn
要素を除く) <div>-</div>
- フロー・コンテンツ
<dl>-</dl>
- 子要素に1個以上の
dt
要素とその対となるdd
要素を内包する場合に限る、コンテンツ・モデルは1個以上のdt
要素,dd
要素<dt>-</dt>
- フロー・コンテンツ(ただし、
header
,footer
,article
,aside
,nav
,section
,h1-h6
要素を除く) <dd>-</dd>
- フロー・コンテンツ
<em>-</em>
- フレージング・コンテンツ
<embed />
- 空
<fieldset>-</fieldset>
- 最初に1個の
legend
要素 legend
要素の直後(兄弟要素関係)にフロー・コンテンツ
<legend>-</legend>
- フレージング・コンテンツ
- 最初に1個の
<figure>-</figure>
- 最初に1個の
figcaption
要素、その直後にフロー・コンテンツ - またはフロー・コンテンツの後に1つの
figcaption
要素 - またはフロー・コンテンツ
<figcaption>-</figcaption>
- フロー・コンテンツ
- 最初に1個の
<footer>-</footer>
- フロー・コンテンツ(ただし、
header
要素,footer
要素を除く) <form>-</form>
- フロー・コンテンツ(ただし、
form
要素を除く) <h1-h6>-</h1-h6>
- フレージング・コンテンツ
<header>-</header>
- フロー・コンテンツ(ただし、
header
要素,footer
要素を除く) <i>-</i>
- フレージング・コンテンツ
<iframe>-</iframe>
- テキストのみ
<img />
- 空
<input />
type
属性の値がhidden
でない場合に限る、コンテンツモデルは空<ins>-</ins>
- トランスペアレント
<kbd>-</kbd>
- フレージング・コンテンツ
<keygen />
- 空
<label>-</label>
- フレージング・コンテンツ(ただし、
label
要素自身と、そのラベル内容と関係のないbutton
,keygen
,input
,meter
,output
,progress
,select
,textarea
要素を除く) <main>-</main>
- フロー・コンテンツ(ただし、
article
,aside
,footer
,header
,nav
要素の子孫としては使えない) <map>-</map>
- トランスペアレント
<area />
- 空
<mark>-</mark>
- フレージング・コンテンツ
<math>-</math>
- インラインMathMLの要素
<meter>-</meter>
- フレージング・コンテンツ(ただし、
meter
要素を除く) <nav>-</nav>
- フロー・コンテンツ
<object>-</object>
- 0個以上の
param
要素に続き、トランスペアレント(ただし、フロー・コンテンツが入る場合は、最初にparam
要素、その後にフロー・コンテンツが続く)<param />
- 空
<ol>-</ol>
- 子要素に1個以上の
li
要素を内包する場合に限る、コンテンツモデルは1個以上のli
要素<li>-</li>
- フロー・コンテンツ
<output>-</output>
- フレージング・コンテンツ
<p>-</p>
- フレージング・コンテンツ
<pre>-</pre>
- フレージング・コンテンツ
<progress>-</progress>
- フレージング・コンテンツ(ただし、
progress
要素を除く) <q>-</q>
- フレージング・コンテンツ
<ruby>-</ruby>
- 次の組み合わせを1組以上
- ルビを振られるテキスト
ruby
要素を含まないフレージング・コンテンツ- または
ruby
要素を含まない単独のruby
要素
- ルビとなるテキスト
- 1個以上の
rt
要素 - または
rp
要素の後に1個以上のrt
要素が続き、そのrt
要素の後ろにrp
要素が続く
- 1個以上の
<rp>-</rp>
- フレージング・コンテンツ
<rt>-</rt>
- フレージング・コンテンツ
- ルビを振られるテキスト
<s>-</s>
- フレージング・コンテンツ
<samp>-</samp>
- フレージング・コンテンツ
<section>-</section>
- フロー・コンテンツ(章・節・項を表す対のヘッディング・コンテンツを必ず伴うこと)
<select>-</select>
- 0個以上の
option
要素,optgroup
要素<option>-</option>
- テキストのみ
<optgroup>-</optgroup>
label
属性必須、0個以上のoption
要素<option>-</option>
- テキストのみ
<small>-</small>
- フレージング・コンテンツ
<span>-</span>
- フレージング・コンテンツ
<strong>-</strong>
- フレージング・コンテンツ
<sub>-</sub>
- フレージング・コンテンツ
<sup>-</sup>
- フレージング・コンテンツ
<svg>-</svg>
- インラインSVGの要素
<table>-</table>
caption
要素が0個、または1個- 0個以上の
col
要素、または 0個以上のcolgroup
要素 thead
要素が0個、または1個tfoot
要素が0個、または1個- 1個以上の
tbody
要素、または1個以上のtr
要素
<caption>-</caption>
- フロー・コンテンツ(ただし、
table
要素を除く) <col />
- 空
<colgroup>-</colgroup>
span
属性がある場合:空span
属性がある場合:0個以上のcol
要素<col />
- 空
<thead>-</thead>
- 0個以上の
tr
要素<tr>-</tr>
- 0個以上の
th
要素<th>-</th>
- フレージング・コンテンツ
<tfoot>-</tfoot>
- 0個以上の
tr
要素<tr>-</tr>
- 0個以上の
td
要素,th
要素<th>-</th>
- フレージング・コンテンツ
<td>-</td>
- フロー・コンテンツ
<tbody>-</tbody>
- 0個以上の
tr
要素<tr>-</tr>
- 0個以上の
td
要素,th
要素<th>-</th>
- フレージング・コンテンツ
<td>-</td>
- フロー・コンテンツ
<tr>-</tr>
- 0個以上の
td
要素,th
要素<th>-</th>
- フレージング・コンテンツ
<td>-</td>
- フロー・コンテンツ
<textarea>-</textarea>
- テキストのみ
<time>-</time>
- フレージング・コンテンツ(ただし、
time
要素を除く) <ul>-</ul>
- 子要素に1個以上の
li
要素を内包する場合に限る、コンテンツモデルは1個以上のli
要素<li>-</li>
- フロー・コンテンツ
<u>-</u>
- フレージング・コンテンツ
<var>-</var>
- フレージング・コンテンツ
<video>-</video>
src
属性がある場合:
トランスペアレント(ただし、video
要素,audio
要素を除く)src
属性がない場合:
1個以上のsource
要素に続き、トランスペアレント(ただし、video
要素,audio
要素を除く)<source />
- 空
</body>
(省略可)</html>
(省略可)補足事項
パルパブル・コンテンツについて
2012年3月29日のHTML5ワーキングドラフトより、フロー・コンテンツ、もしくはフレージング・コンテンツを含むことができ得る要素はパルパブル・コンテンツというコンテンツ・モデルにも分類されることになりました。パルパブル・コンテンツに分類される要素は、最低でも1つのhidden
属性が指定されていない明確な内容を内容に持つべきとされています(絶対ではない)。これは含まれるべき内容がない(空や存在すべき属性値が存在しない)用いられ方を避けるための制約として新たに分類されたものですが、実際にはスクリプトで後から内容を挿入するなどの作法もあるため、この要件を満たすことの重要度は高くありません。文法チェッカーにおいて、この要件を満たせていない要素を発見した場合に制作者に注意を促してくれることでしょう。
トランスペアレントについて
一部の要素にはトランスペアレントというコンテンツ・モデルが定義されています。トランスペアレントは、コンテンツ・モデルとして透過という意味であり、親要素のコンテンツ・モデルを継承します。親要素がフロー・コンテンツで、フロー・コンテンツを含むことができるコンテンツ・モデルであれば、同じようにフロー・コンテンツを含むことができます。親要素がフレージング・コンテンツしか含めない場合は、同じようにフレージング・コンテンツしか含むことができません。
空要素について
終了タグをもたない空要素については便宜上わかりやすいように 、最後の区切り子の手前に半角スペースを空けてから続けてスラッシュ(/
)を付け足していますが、HTML5のHTMLシリアライゼーションにおいてはあってもなくてもどちらでも良いです。XHTMLシリアライゼーションでは必須です。
CSSとの兼ね合いについて
HTML5における要素の関係はブロックレベル要素・インライン要素のどちらかという2値では表すことができなくなったため、ブロックレベル要素・インライン要素という概念はなくなりました。HTML5の各要素には新要素も含めて、デフォルトのCSSで各々のdisplay
プロパティの値が定義されています(Rendering)。