WebAIM - Web Accessibility In Mind

E-mail List Archives

Thread: another way to create header attribute in complext tables?

for

Number of posts in this thread: 7 (In chronological order)

From: Angela French
Date: Tue, Dec 09 2014 10:11AM
Subject: another way to create header attribute in complext tables?
No previous message | Next message →

Hello,
I am testing out a new CMS that our organization is considering purchasing. At the moment I am testing its capability of supporting the markup of complex tables. Although it allows me to identify which cells are header cells, and it does provide a means for me to provide an ID attribute, it does not provide the means of indicating the headers attribute (as this example illustrates<http://usability.com.au/2005/06/accessible-data-tables-2005/#id>;).

Is there another means of creating the association between headers and columns in complex tables without using the "headers=" attribute?

Thanks

Angela French
Internet Specialist
State Board for Community and Technical Colleges
360-704-4316
= EMAIL ADDRESS REMOVED = <mailto: = EMAIL ADDRESS REMOVED = >
www.checkoutacollege.com<;http://www.checkoutacollege.com>;
www.sbctc.edu<;http://www.sbctc.edu>;

From: Jared Smith
Date: Tue, Dec 09 2014 10:19AM
Subject: Re: another way to create header attribute in complext tables?
← Previous message | Next message →

The article you reference is almost 10 years old. It's recommendation
to avoid the scope attribute is quite outdated.

Can you assign the scope="col" or scope="row" attributes to the header
cells as documented at
http://webaim.org/techniques/tables/data#headers?

If not, it's unlikely that the table would ever be highly accessible.
I don't think I've ever seen a table that is so complex that it
requires the headers/id approach (i.e., scope is not sufficient) that
is actually understandable to a screen reader user.

Jared

From: Angela French
Date: Tue, Dec 09 2014 10:24AM
Subject: Re: another way to create header attribute in complexttables?
← Previous message | Next message →

Thanks Jared. I haven't coded up a complex table in a long time. In the CMS I am able to provide the scope to row, column, row group and column group.

-----Original Message-----
From: = EMAIL ADDRESS REMOVED = [mailto: = EMAIL ADDRESS REMOVED = ] On Behalf Of Jared Smith
Sent: Tuesday, December 09, 2014 9:20 AM
To: WebAIM Discussion List
Subject: Re: [WebAIM] another way to create header attribute in complext tables?

The article you reference is almost 10 years old. It's recommendation to avoid the scope attribute is quite outdated.

Can you assign the scope="col" or scope="row" attributes to the header cells as documented at http://webaim.org/techniques/tables/data#headers?

If not, it's unlikely that the table would ever be highly accessible.
I don't think I've ever seen a table that is so complex that it requires the headers/id approach (i.e., scope is not sufficient) that is actually understandable to a screen reader user.

Jared

From: Ryan E. Benson
Date: Wed, Dec 10 2014 5:33PM
Subject: Re: another way to create header attribute in complext tables?
← Previous message | Next message →

One other thing is see if there is a code view. A lot of CMS' I have worked
with present a WYSIWYG editor, but have a code view or view source for the
content. This may need to be enabled in some set of options. Once you get
in, you can manually edit the code, and add the stuff Jared said

--
Ryan E. Benson

On Tue, Dec 9, 2014 at 12:24 PM, Angela French < = EMAIL ADDRESS REMOVED = > wrote:

> Thanks Jared. I haven't coded up a complex table in a long time. In the
> CMS I am able to provide the scope to row, column, row group and column
> group.
>
> -----Original Message-----
> From: = EMAIL ADDRESS REMOVED = [mailto:
> = EMAIL ADDRESS REMOVED = ] On Behalf Of Jared Smith
> Sent: Tuesday, December 09, 2014 9:20 AM
> To: WebAIM Discussion List
> Subject: Re: [WebAIM] another way to create header attribute in complext
> tables?
>
> The article you reference is almost 10 years old. It's recommendation to
> avoid the scope attribute is quite outdated.
>
> Can you assign the scope="col" or scope="row" attributes to the header
> cells as documented at http://webaim.org/techniques/tables/data#headers?
>
> If not, it's unlikely that the table would ever be highly accessible.
> I don't think I've ever seen a table that is so complex that it requires
> the headers/id approach (i.e., scope is not sufficient) that is actually
> understandable to a screen reader user.
>
> Jared
> > > messages to = EMAIL ADDRESS REMOVED =
> > > >

From: Birkir R. Gunnarsson
Date: Thu, Dec 11 2014 6:46AM
Subject: Re: another way to create header attribute in complext tables?
← Previous message | Next message →

NVDA and Jaws fully support "scope="colgroup" along with the colspan
attribute in complex tables.
<th colspan="2" scope="colgroup">Phone number</th>
<th scope="col">Home</th>
<th scope="col">Work</th>
<td>555-555-5555</td>
<td>555-555-5556</td>
(just add table and tr attributes if you want to create a test table).

Jaws will read colgroup header first, then individual column header
(phone number, work, 555 555 5555).
NVDA does the opposite (work, phone number ...).
Voiceover does not read this, but it does not read the headers/id
connection either (tested with 7, there could have been updates that
addressed this).
It appears to work using aria-labelledby pointing to id of col and row headers.
None of these screen readers, in my most recent checks, support
rowgroup, and I am at a loss to explain why if colgroup is well
supported.
It is on my to-do list to explore this, only that list is bloody long.
Hope this helps, a bit.
-B

On 12/10/14, Ryan E. Benson < = EMAIL ADDRESS REMOVED = > wrote:
> One other thing is see if there is a code view. A lot of CMS' I have worked
> with present a WYSIWYG editor, but have a code view or view source for the
> content. This may need to be enabled in some set of options. Once you get
> in, you can manually edit the code, and add the stuff Jared said
>
> --
> Ryan E. Benson
>
> On Tue, Dec 9, 2014 at 12:24 PM, Angela French < = EMAIL ADDRESS REMOVED = > wrote:
>
>> Thanks Jared. I haven't coded up a complex table in a long time. In the
>> CMS I am able to provide the scope to row, column, row group and column
>> group.
>>
>> -----Original Message-----
>> From: = EMAIL ADDRESS REMOVED = [mailto:
>> = EMAIL ADDRESS REMOVED = ] On Behalf Of Jared Smith
>> Sent: Tuesday, December 09, 2014 9:20 AM
>> To: WebAIM Discussion List
>> Subject: Re: [WebAIM] another way to create header attribute in complext
>> tables?
>>
>> The article you reference is almost 10 years old. It's recommendation to
>> avoid the scope attribute is quite outdated.
>>
>> Can you assign the scope="col" or scope="row" attributes to the header
>> cells as documented at http://webaim.org/techniques/tables/data#headers?
>>
>> If not, it's unlikely that the table would ever be highly accessible.
>> I don't think I've ever seen a table that is so complex that it requires
>> the headers/id approach (i.e., scope is not sufficient) that is actually
>> understandable to a screen reader user.
>>
>> Jared
>> >> >> messages to = EMAIL ADDRESS REMOVED =
>> >> >> >>
> > > >


--
Work hard. Have fun. Make history.

From: Angela French
Date: Thu, Dec 11 2014 10:06AM
Subject: Re: another way to create header attribute in complexttables?
← Previous message | Next message →

We don't expect our content contributors to know html though.

-----Original Message-----
From: = EMAIL ADDRESS REMOVED = [mailto: = EMAIL ADDRESS REMOVED = ] On Behalf Of Ryan E. Benson
Sent: Wednesday, December 10, 2014 4:33 PM
To: WebAIM Discussion List
Subject: Re: [WebAIM] another way to create header attribute in complext tables?

One other thing is see if there is a code view. A lot of CMS' I have worked with present a WYSIWYG editor, but have a code view or view source for the content. This may need to be enabled in some set of options. Once you get in, you can manually edit the code, and add the stuff Jared said

--
Ryan E. Benson

On Tue, Dec 9, 2014 at 12:24 PM, Angela French < = EMAIL ADDRESS REMOVED = > wrote:

> Thanks Jared. I haven't coded up a complex table in a long time. In
> the CMS I am able to provide the scope to row, column, row group and
> column group.
>
> -----Original Message-----
> From: = EMAIL ADDRESS REMOVED = [mailto:
> = EMAIL ADDRESS REMOVED = ] On Behalf Of Jared Smith
> Sent: Tuesday, December 09, 2014 9:20 AM
> To: WebAIM Discussion List
> Subject: Re: [WebAIM] another way to create header attribute in
> complext tables?
>
> The article you reference is almost 10 years old. It's recommendation
> to avoid the scope attribute is quite outdated.
>
> Can you assign the scope="col" or scope="row" attributes to the header
> cells as documented at http://webaim.org/techniques/tables/data#headers?
>
> If not, it's unlikely that the table would ever be highly accessible.
> I don't think I've ever seen a table that is so complex that it
> requires the headers/id approach (i.e., scope is not sufficient) that
> is actually understandable to a screen reader user.
>
> Jared
> > > list messages to = EMAIL ADDRESS REMOVED =
> > > list messages to = EMAIL ADDRESS REMOVED =
>

From: Jonathan Avila
Date: Thu, Dec 11 2014 11:30AM
Subject: Re: another way to create header attribute in complexttables?
← Previous message | No next message

> NVDA and Jaws fully support "scope="colgroup" along with the colspan attribute in complex tables.

The following page has an old but interesting discussion on scope="colgroup" http://accessiblehtml.sourceforge.net/accessible_tables.html#contents_item_6.2

Jonathan


-----Original Message-----
From: = EMAIL ADDRESS REMOVED = [mailto: = EMAIL ADDRESS REMOVED = ] On Behalf Of Birkir R. Gunnarsson
Sent: Thursday, December 11, 2014 8:46 AM
To: WebAIM Discussion List
Subject: Re: [WebAIM] another way to create header attribute in complext tables?

NVDA and Jaws fully support "scope="colgroup" along with the colspan attribute in complex tables.
<th colspan="2" scope="colgroup">Phone number</th> <th scope="col">Home</th> <th scope="col">Work</th> <td>555-555-5555</td> <td>555-555-5556</td> (just add table and tr attributes if you want to create a test table).

Jaws will read colgroup header first, then individual column header (phone number, work, 555 555 5555).
NVDA does the opposite (work, phone number ...).
Voiceover does not read this, but it does not read the headers/id connection either (tested with 7, there could have been updates that addressed this).
It appears to work using aria-labelledby pointing to id of col and row headers.
None of these screen readers, in my most recent checks, support rowgroup, and I am at a loss to explain why if colgroup is well supported.
It is on my to-do list to explore this, only that list is bloody long.
Hope this helps, a bit.
-B

On 12/10/14, Ryan E. Benson < = EMAIL ADDRESS REMOVED = > wrote:
> One other thing is see if there is a code view. A lot of CMS' I have
> worked with present a WYSIWYG editor, but have a code view or view
> source for the content. This may need to be enabled in some set of
> options. Once you get in, you can manually edit the code, and add the
> stuff Jared said
>
> --
> Ryan E. Benson
>
> On Tue, Dec 9, 2014 at 12:24 PM, Angela French < = EMAIL ADDRESS REMOVED = > wrote:
>
>> Thanks Jared. I haven't coded up a complex table in a long time. In
>> the CMS I am able to provide the scope to row, column, row group and
>> column group.
>>
>> -----Original Message-----
>> From: = EMAIL ADDRESS REMOVED = [mailto:
>> = EMAIL ADDRESS REMOVED = ] On Behalf Of Jared Smith
>> Sent: Tuesday, December 09, 2014 9:20 AM
>> To: WebAIM Discussion List
>> Subject: Re: [WebAIM] another way to create header attribute in
>> complext tables?
>>
>> The article you reference is almost 10 years old. It's recommendation
>> to avoid the scope attribute is quite outdated.
>>
>> Can you assign the scope="col" or scope="row" attributes to the
>> header cells as documented at http://webaim.org/techniques/tables/data#headers?
>>
>> If not, it's unlikely that the table would ever be highly accessible.
>> I don't think I've ever seen a table that is so complex that it
>> requires the headers/id approach (i.e., scope is not sufficient) that
>> is actually understandable to a screen reader user.
>>
>> Jared
>> >> >> list messages to = EMAIL ADDRESS REMOVED =
>> >> >> list messages to = EMAIL ADDRESS REMOVED =
>>
> > > list messages to = EMAIL ADDRESS REMOVED =
>


--
Work hard. Have fun. Make history.