WebAIM - Web Accessibility In Mind

E-mail List Archives

Re: Examples of and justification for id/headers incomplex tables


From: Spellman, Jeanne
Date: May 17, 2007 11:00AM

Fidelity Investments depends heavily on complex tables for displaying
product and customer account information. Portions of the web site have
been using complex table markup for years to improve accessibility.
Unfortunately, most of the examples I am familiar with are behind the
customer password. For those with personal Fidelity accounts, look in
the Accounts and Trade section.

> 1. What are the use cases?
> 2. What problems it solves and how?
> 3. Who benefits and how?
> 4. The incentive that authors will have to actually use it.
> 5. How it could be implemented.
> 6. The incentive that UA vendors have to implement it.

(1)Id/headers are used in dynamic tables for grouping rows and/or
columns (e.g. Large Cap Funds, International Funds, etc).

Id/headers are used on dynamic tables with irregular shapes, where the
table provides a "total" row in a larger, more prominent font that will
not fit in the regular cell. Cells are then merged in that row, breaking
the standard connection to the TH for that column.

(2)Id/headers in a dynamic table are easier to code and have less
cross-browser CSS implementation problems than other techniques for row
and column grouping.
(3)It benefits screen reader users by providing header information for
individual cells. I would also find this feature very useful if extended
to my cellphone and PDA browsers when I am viewing a large table with
data streamed vertically in a small screen, to have the ability to see
the scrolled-off-the-screen headers with the visible data.
(4)Fidelity has an accessibility group that trains developers and
designers in techniques for providing accessible financial information.
(5)The implementation should stay the same as HTML 4. UA vendors
shouldn't take it out of their products.
(6)Large financial institutions need to present complex financial data
in tables. Large financial institutions that do business with the U.S.
Federal government are required to provide Section 508 accessibility
compliance. Many large financial institutions like Fidelity Investments
and Bank of America have a commitment to providing accessibility to

Additional Use Cases for Complex Table Markup (just in case these are in
danger, as well)

Axis is used when presenting a dynamic list of transactions where a
status (e.g. "today's transaction") is presented with a tinted
background for sighted users, and the axis attribute is used to provide
equivalence for screen reader users.

Table summaries are heavily used for data tables (sometimes
inappropriately in layout tables, but the developers are trying to be

Table scope attributes are used routinely on data tables.

An additional use case for the scope attribute is on complex tables
where the first cell in a row is the mutual fund symbol and the mutual
fund name is the second cell. Scope is used in the second cell to read
out the fund name to screen readers querying the headers for the cell
instead of the symbol (which is usually unintelligible in JAWS).

Jeanne Spellman