WCAG 2.0 実装方法集

メインコンテンツへスキップ

-

H39: caption要素を用いて、データテーブルの表題とデータテーブルを関連付ける

適用(対象)

HTML及びXHTMLのデータテーブル

これは、次の達成基準に関連する実装方法である:

解説

この実装方法の目的は、見た目でテーブルの表題を付ける場合に、プログラムで解釈できるようにデータテーブルと表題を関連付けることである。表題はテーブルの識別子であり、タイトル又は見出しのような働きをする。

caption要素は表題のテキストのための適切なマークアップであり、(初期状態では)表示上も、テーブルの識別子がそのテーブルに関連付けられていることを保証するものである。さらに、caption要素を用いることによって、音声読み上げソフトウェアがテーブルの表題に利用者を直接誘導することも可能になる。

caption要素は、テーブルにsummary属性を指定しているかどうかに関わらず利用できる。caption要素はテーブルを特定するもの、summary属性はテーブルの概要を提供したり、見方を説明するものである。両方とも指定する場合、caption要素にsummary属性と同じ情報を含めるべきではない。

WCAG 2.0はレイアウトテーブルの利用を禁止していないが、CSSベースのレイアウトを推奨している。HTML及びXHTMLのtable要素に与えられたセマンティックな意義を守り、コンテンツから表現を分離するというコーディングの実践に沿うためである。テーブルをレイアウトのために利用する場合、caption要素は使用しない。レイアウトテーブルの目的は、コンテンツの配置を制御することのみであって、テーブルそのものは利用者から見て「透明」であるべきである。caption要素を用いることによってテーブルの存在を示してしまうと、この透明性を壊すことになる。

事例

事例 1:スケジュールカレンダーの表題

Example Code:

<table>
<caption>3月6日の週のスケジュール</caption>
...</table> 

参考リソース

この参考リソースは、あくまでも情報提供のみが目的であり、推薦などを意味するものではない。

検証

チェックポイント

  1. レイアウトテーブルかどうかを確認:テーブルのセルの内容が同じ行や列に含まれる他のセルの内容と関係があるかどうか判断する。

    1. 「いいえ」の場合、そのテーブルはレイアウトテーブルである。

    2. 「はい」の場合、そのテーブルはデータテーブルである。

  2. テーブルがレイアウトテーブルである場合、caption要素を用いていない。

  3. テーブルがデータテーブルであり、caption要素を用いている場合、そのcaption要素によってテーブルが特定できる。

  4. データテーブルに、summary属性とcaption要素の両方を指定している場合、summary属性の内容がcaption要素の繰り返しではない。

判断基準

注意: この実装方法が「達成基準を満たすことのできる実装方法」の一つである場合、このチェックポイントや判定基準を満たしていなければ、それはこの実装方法が正しく用いられていないことを意味するが、必ずしも達成基準を満たしていないことにはならない。場合によっては、別の実装方法によってその達成基準が満たされていることもありうる。

日本語訳における注記:

この文書の正式版は、W3Cサイトで公開されている英語の文書であり、この日本語訳には誤訳が含まれていることもありえます。なお、文中にある「日本語訳における注記」は、W3Cの原文にはないものであり、日本語訳監修者が追記したものです。