securecat (3946) の日記

2005 年 03 月 17 日
午後 04:16

Re: そのテーブル、本当に必要?

そのテーブル、本当に必要?より

典型的な 2 列の表 を作ってみました (データ出典)。上下とも同じ表です。ただし、上は table + tr + th + td、下は dl + dt + dd で記述し、それぞれスタイルを付けてあります。CSS を外したり、ソースを表示して確認してください。この程度のデータなら、何もテーブルを使わなくたって、定義リスト を使ってシンプルに書いてしまうことができます。簡単でしょ?

それは、単に見栄えとしてdl/dt/ddで書いても同じように見えるという説明にしかなっておらず、表をtableではなくdl/dt/ddで記述可能だという説明にはなっていないと思います。

その表はtheadが省略されており、その内容はたとえば

<thead>
<tr>
<th scope="col">項目</th>
<th scope="col">内容</th>
</tr>
</thead>

このようなものです。この部分を、

<dt>項目</dt>
<dd>内容</dd>

とするのは、無理があります。「項目」と「内容」はtbodyのそれぞれの列のデータに対する見出しだからです(特に「項目」は、各行の見出しに対する見出しです)。

#まあこの表の場合、1行目に関しては「<caption>「view-source:」形式の URL を使って安全なサイトを示す鍵アイコンが偽装される</caption>」としたほうが良いかもしれませんが。

また、tableには拡張性があり、あとから、列や行を任意に増やしたり減らしたりすることができますが、dl/dt/ddではそうは行かないでしょう。

もちろんこの方法ですべてのテーブルを書き換えることはできませんが、中身のデータによっては、これで意味も通じるし、よりアクセシブルになります。

'それ'が表なのであれば、tableで記述しないことにより表としての情報伝達性が失われますし、アクセシビリティが向上することはないと考えます。というかアクセシビリティがどう関係しているのかよくわかりません。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

計算機科学者とは、壊れていないものを修理する人々のことである

処理中...