tr 要素表組みの行を表す

tr 要素は表組みにおける行を表します。行とは、表組みでいう、横方向の並びのことです。例えば 1つの tr 要素内に、見出しセルとなる th 要素や、セルとなる td 要素colspan 属性を伴わずに 5つ配置した場合、それは横方向に 5つのセルが並んだ表組みの 1行となります。

tr 要素は、thead 要素tbody 要素tfoot 要素の子要素として、もしくは table 要素の子要素として使用することができます。ただし、table 要素の子要素となる場合は、他に table 要素の子要素となる tbody 要素が 1つもないことが条件です (詳細説明)。さらに、table 要素内で、captioncolgroup、thead 要素より後ろに記述しなければなりません。

さらに詳細な説明を見る

サンプルソースを見る

tr 要素の仕様

カテゴリ
  • なし
コンテンツモデル
  • 0個以上の td または th 要素
この要素を使用できる文脈
  • thead 要素の子要素として。
  • tbody 要素の子要素として。
  • tfoot 要素の子要素として。
  • table 要素の子要素として。ただし、caption、colgroup、thead 要素より後ろ、かつ table 要素の子要素となる tbody 要素が 1つもない場合に限ります。
この要素で使用できる属性
DOM インタフェース
interface HTMLTableRowElement : HTMLElement {
  readonly attribute long rowIndex;
  readonly attribute long sectionRowIndex;
  readonly attribute HTMLCollection cells;
  HTMLElement insertCell(optional long index);
  void deleteCell(long index);
};

詳細説明

tr 要素と tbody 要素の関係

tr 要素は table 要素の子要素として使用することができますが、table 要素の子要素となる場合は、他に table 要素の子要素となる tbody 要素が 1つもないことが条件です。

ただし、HTML 文書においては、tbody 要素は開始、終了タグ共に省略が認められているため、table 直下に tr 要素が存在する場合はその親要素として開始、終了タグが省略された tbody 要素が存在すると見なされます。結果として、見かけ上は table 要素直下に、tr 要素と tbody 要素が混在していたとしても、文法的には妥当な文書という扱いになります。

XML として文書を扱う場合は、開始、終了タグの省略が認められないため、上記のような状態は文法的に妥当でない文書となります。

tr 要素のサンプルソース

<table>
 <caption>
  <p><strong>1年1組 生徒名簿</strong></p>
  <p>この表は1年1組の生徒名簿です。列1に出席番号、列2に氏名が入り、生徒1名につき1行となります。</p>
 </caption>
 <thead>
  <tr>
   <th>出席番号</th>
   <th>氏名</th>
  </tr>
 </thead>
 <tbody>
  <tr>
   <td>01</td>
   <td>日本太郎</td>
   …省略…
  </tr>
 </tbody>
</table>

W3C HTML5 仕様書

4.9.8 The tr element