WebAIM - Web Accessibility In Mind

E-mail List Archives

Re: Complex tables: Scope AND id and header attributes

for

From: Jonathan Avila
Date: Oct 27, 2015 4:44PM


> We need better software tools that let us put these solutions into play right from the beginning, such as when the author is writing in MS Word. Not later in the workflow. Right from the beginning.

For complex tables, I envision a tool where you click/select the data cell you want to assign headers too and then you click/select each cell in order that you want to "label" that cell. Then you click "associate" and the tool adds the appropriate header attribute (and applies ids as needed). The tool could also predict cells that you might want headers and pre-select them for you. The tool could learn as you go -- to better predict what you might do for the next data cell.

Such a tool would be invaluable in PDF work and very useful in HTML.

For Word -- well we'd have to come to an agreed up attribute in the DOM/XML -- something I have not researched in a while. Header association in Word and Excel is something that needs to be taken seriously.

Jonathan

--
Jonathan Avila
Chief Accessibility Officer
SSB BART Group
<EMAIL REMOVED>

703-637-8957 (o)
Follow us: Facebook | Twitter | LinkedIn | Blog | Newsletter


-----Original Message-----
From: WebAIM-Forum [mailto: <EMAIL REMOVED> ] On Behalf Of Chagnon | PubCom.com
Sent: Tuesday, October 27, 2015 6:34 PM
To: 'WebAIM Discussion List'
Subject: Re: [WebAIM] Complex tables: Scope AND id and header attributes

And when will be get solutions that real people can actually produce in a normal workday using basic Word, Acrobat, and HTML editors?

So many of these requirements require painful hand coding by code jockeys. That starts to make accessibility more expensive to implement and more likely that it will be downplayed by those who control the purse strings.

We need better solutions.
We need better software tools that let us put these solutions into play right from the beginning, such as when the author is writing in MS Word. Not later in the workflow. Right from the beginning.

--BJC

-----Original Message-----
From: WebAIM-Forum [mailto: <EMAIL REMOVED> ] On Behalf Of Jonathan Avila
Sent: Tuesday, October 27, 2015 10:25 AM
To: WebAIM Discussion List < <EMAIL REMOVED> >
Subject: Re: [WebAIM] Complex tables: Scope AND id and header attributes

> I would avoid headers/id by now (in html), it is being sunsetted

Birkir, can you please provide a link(s) indicating where this technique is being sunsetted?

> Also, you can no longer use the scope attribute on td cells, you must use them on header (th or td with role="columnheader" or "rowheader") cells.

While this may be true for HTML conformance -- I have not seen these as a documented failure under WCAg.

> and its support by assistive technologies is no better than that of the replacement techniques.

I'm not sure I agree. There are many situations where a table contains multiple column headers but only certain column headers apply to a cell in that column -- not all column headers. In these examples colgroup is not sufficient IMO. In these cases you need id and headers -- that's why the practice could not be sunsetted AFAIK. Examples are in the WCAG table tutorial.

http://www.w3.org/WAI/tutorials/tables/multi-level/

Jonathan

--
Jonathan Avila
Chief Accessibility Officer
SSB BART Group
<EMAIL REMOVED>
Phone 703.637.8957
Follow us: Facebook | Twitter | LinkedIn | Blog | Newsletter

-----Original Message-----
From: WebAIM-Forum [mailto: <EMAIL REMOVED> ] On Behalf Of Birkir R. Gunnarsson
Sent: Friday, October 23, 2015 5:01 PM
To: WebAIM Discussion List
Subject: Re: [WebAIM] Complex tables: Scope AND id and header attributes

Hi

I would avoid headers/id by now (in html), it is being sunsetted and its support by assistive technologies is no better than that of the replacement techniques.
Also, you can no longer use the scope attribute on td cells, you must use them on header (th or td with role="columnheader" or "rowheader") cells.
If you want to indicate that a single row- or column header spans multiple rows or columns, sue the rowspan or colspan attribute with scope="rowgroup" or "colgroup".
E.g.
This header cel is header for two columns:
<th colspan="2" scope="colgroup">Phone numbers</th>

and this is a header for two rows:
<th rowspan="2" scope="rowgroup">My contact info</th>

Colgroup is decently supported on Windows, but support for rowgroup is somewhat buggy, though getting better.
Voiceover (ioS 9.1) does not yet support colgroup properly. It will announce the multi-column header, but does not announce the individual column headers.
if you had this:
<table>
<tr>
<th colspan="2" scope="colgroup">Phone numbers</th> </tr> <tr> <th scope="col">Personal</th> <th scope="col">Business</th> </tr> <tr>
<td>919 999 9999</td>
<td>919777 8797</td>
</tr>
</table>

If you go into the first td cell using table navigation in Jaws or NVDA, they would read:
Phone numbers, personal, 919 999 9999
Voiceover (on iOS) reads:
Phone numbers 919 999 9999.
hth
-Birkir



On 10/23/15, Dona Patrick < <EMAIL REMOVED> > wrote:
> I recall being told by someone or reading somewhere that one should
> not use both Scope AND id and header attributes in complex tables. I
> don't recall if this was HTML or PDF.
>
> Has anyone else heard this? Is it true or was it misinformation?
>
> Thanks,
>
> Dona