Re: HTML Table Markup

OK. I think we're getting closer.

It looks like we're having a problem with defining the correct markup for
*small data tables*.

I believe we all agree on:
- layout tables should not use TH
- large data tables must use TH

Regarding small data tables, Sailesh noted :
> such a table can be navigated as a layout table
> and absence of headers does not really
> make a huge difference.
>

This suggests that we could relax the TH rule to exclude small data tables.

We could also permit other markup, such as Andrew has demonstrated, for the
markup of small data tables. Small data tables would still require header
markup but you can use TH or other markup.

Do small data tables require header markup (could be TH or other)?

If we required header markup (TH or other) for small data tables would that
make them more accessible?

Cheers,
Chris


----- Original Message ----- 
From: "Andrew Kirkpatrick" <andrew_kirkpatrick@wgbh.org>
To: <w3c-wai-ig@w3.org>
Cc: "Chris Ridpath" <chris.ridpath@utoronto.ca>; "John M Slatin"
<john_slatin@austin.utexas.edu>
Sent: Friday, September 10, 2004 12:26 AM
Subject: Re: HTML Table Markup


>
> >Yes, my wording was not quite right. Let me try again...
> >
> >We agreed that data tables must use TH elements and that layout tables
cannot
> >use TH elements.
> >
> >You determine the table type using the definitions supplied by the
techniques
> >doc.
> >
> >
> >
> I actually wrote the below post on 9/4, but didn't receive it myself
> from the list, so I'm reposting it in this context.  In general, I don't
> think <th> is required of all data tables, which throws a little wrench
> into Chris's test suite for tables...
>
> 5.1 States: For data tables, identify row and column headers.
>
> So if I do the following, is it 100% clear what the headings are?
> <table>
> <tr>
>  <td scope="col">A</td>
>  <td scope="col">B</td>
> </tr>
>  <tr>
>  <td>foo</td>
> <td>bar</td>
> </tr>
> </table>
>
> What if I did this?
> <table>
> <tr>
> <td id="a">A</td><td id="b">B</td>
> </tr>
> <tr>
> <td headers="a">foo</td><td headers="b">bar</td> </tr> </table>
>
> How about:
> <table>
> <thead>
> <tr>
> <td>A</td><td>B</td>
> </tr>
> </thead>
> <tbody>
> <tr>
> <td>foo</td><td>bar</td>
> </tr>
> </tbody>
> </table>
>
> This one would be clear to a sighted person, shouldn't assistive
> technologies be able to pick up on something of this sort?
> <style>
> .z font-weight: bold;
> </style>
> <table>
> <tr>
> <td class="z">A</td><td class="z">B</td> </tr> <tr>
> <td>foo</td><td>bar</td> </tr> </table>
>
> The HTML recommendation states:
>
(http://www.w3.org/TR/1999/REC-html401-19991224/struct/tables.html#h-11.2.6)
> The TH element defines a cell that contains header information.
> And...
> The headers and scope attributes also allow authors to help non-visual
> user agents process header information.
>
> More...
>
(http://www.w3.org/TR/1999/REC-html401-19991224/struct/tables.html#non-visua
l-rendering)
> For a given data cell, the headers attribute lists which cells provide
> pertinent header information.
> And...
> For a given header cell, the scope attribute tells the user agent the
> data cells for which this header provides information.
>
> So to answer the question, I believe that table header elements are not
> necessary, however they are pretty darn clear for a human developer
> looking at the code to understand.  It is also convenient for applying
> styles. In reality, we are concerned with what works with existing
> assistive technologies, so we might not implement one of the examples
> above because it may not work (or because we'd need to spend the time to
> test it out).
>
> AWK
>
> -- 
> Andrew Kirkpatrick, Project Manager
> WGBH National Center for Accessible Media
> http://ncam.wgbh.org
> 617.300.4420
>
>

Received on Friday, 10 September 2004 13:21:18 UTC