Go to overview: Standard HTML mark-up in screenreader tests

Comparing complex data table mark-up with column headers marked up with headers/id and scope="colgroup"

Detlev Fischer, (detlev [dot] fischer [ at ] testkreis [dot] de)

Last update: 8 September 2012

Complex data table correctly marked up with headers and id

Weighting of home work, exams and projects results
Homework Exams Projects
1 2 Final 1 2 Final
15% 15% 15% 20% 10% 10% 15%

Table marked up with id and headers: Results for screen reader tests

Win XP, FF 15.0, NVDA 2011.3 Linear reading: NVDA under Firefox reads for the first row in the rowgroup first top-level, then second-level row header, then column header; for the second row in the rowgroup, it reads just toplevel header, then column header (skipping the more important secondary row header)
Whebn navigating table cells with (STR + ALT + arrow keys),
Win XP, IE 8, NVDA 2011.3 NVDA under IE 8 does not read headers, just column number, then content. Aside: Table cell navigation with (STR + ALT + arrow keys) seems to be buggy, moving up and down wih arrows sometimes moves diagonally.
Win XP, IE 8, SaToGo In-table navigation (STR + ALT + arrow keys) just reads the content of the data cells, no headers, no column number, but there are some navigation options: Modifier + R reads current row (the second row in rowgroup without toplevel header), Modifier + C reads top column cell (= header)
Win 7, IE 9, JAWS 13 In table navigation (STR + ALT + arrow keys), JAWS under IE9 reads the top-level header, the secondary header, then the content of the data cell, then column <number> as specified.
Win 7, FF 13, JAWS 13 Exactly the same behaviour as under WIN 7, IE9, JAWS 13 (see immediately above).
Win 7, FF 13, NVDA Reads top-level header, then second-level header, then column <number>, then cell content.
Win 7, IE9, NVDA headers not read by NVDA in IE9. In-table navigation (CTR + ALT + arrow keys) just reads column <number>, then cell content. Arrows-up navigation does not seem to work (just linearly).
Mac OS 10.5.8, VoiceOver Cannot get VoiceOver to read headers even though VO settings are set to read headers. Some commands do not seem to work (e.g., Control-Option + T to jump to table, or Control-Option + R to read row in table). If anyone can help out to complement / verify these results for VO, please get in touch! (detlev [dot] fischer [ at ] testkreis [dot] de)

Same table incorrectly marked up with headers and id

The content cells under Projects > 1,2,Final reference the top-level header "Exams" instead of the correct header "Projects".

Weighting of home work, exams and projects results
Homework Exams Projects
1 2 Final 1 2 Final
15% 15% 15% 20% 10% 10% 15%

Table marked up incorrectly with id and headers: Results for screen reader tests

Win XP, FF 15.0, NVDA 2011.3 Same result as above: NVDA under Firefox reads the headers as (incorrectly) specified (top-level header first, then second level header)
Win XP, IE 8, NVDA 2011.3 NVDA under IE 8 does not read headers, just column number. Aside: Table cell navigation with (STR + ALT + arrow keys) seems to be buggy, moving up and down wih arrows sometimes moves diagonally.
Win XP, IE 8, SaToGo Same behaviour as above.
Win 7, IE 9, JAWS 13 In table navigation (STR + ALT + arrow keys), JAWS under IE9 reads the top-level header, the secondary header, then the content of the data cell, then column <number> as specified (i.e. giving the incorrect header 'exams' for content cells under 'projects').
Win 7, FF 13, JAWS 13 Exactly the same behaviour as under WIN 7, IE9, JAWS 13 (see immediately above).
Win 7, FF 13, NVDA Reads top-level header, then second-level header, then column <number>, then cell content (reading top-level header 'exams' throughout, as incorrectly specified).
Win 7, IE9, NVDA headers not read by NVDA in IE9. In-table navigation (CTR + ALT + arrow keys) just reads column <number>, then cell content (reading top-level header 'exams' throughout, as incorrectly specified). Arrows-up navigation does not seem to work (just linearly).
Mac OS 10.5.8, VoiceOver ??? See note above.

Same complex data table marked up with scope="colgroup"

The much easier and less error-prone mark-up with scope="colgroup" should ensure that the top-level header is applied to all cells underneath in addition to second level headers.

Weighting of home work, exams and projects results
Homework Exams Projects
1 2 Final 1 2 Final
15% 15% 15% 20% 10% 10% 15%

Table marked with scope="colgroup": Results for screen reader tests

Win XP, FF 15.0, NVDA 2011.3 All headers read, but order of headers inversed compared to mark-up with id and headers: NVDA under Firefox reads first second level column header, then top-level column header
Win XP, IE 8, NVDA 2011.3 NVDA under IE 8 does not read headers, just column number. Aside: Table cell navigation with (STR + ALT + arrow keys) seems to be buggy, moving up and down wih arrows sometimes moves diagonally.
Win XP, IE 8, SaToGo In table navigation (STR + ALT + arrow keys), SaToGo under IE8 just reads the content of the data cells, no headers, no column number
Win 7, IE 9, JAWS 13 Same behaviour as with cells correctly marked up with headers and id: both levels of header correctly read, first top-level, then second level header, then content and column number.
Win 7, FF 13, JAWS 13 Exactly the same behaviour as under WIN 7, IE9, JAWS 13 (see immediately above).
Win 7, FF 13, NVDA Like above, but order of headers inversed: Reads second-level header then top-level header, then then column <number>, then cell content (reading top-level header 'exams' throughout, as incorrectly specified).
Win 7, IE9, NVDA No difference to mark-up with headers and id, headers not read by NVDA in IE9. In-table navigation (CTR + ALT + arrow keys), does not read headers at all, just reads column <number>, then cell content (reading top-level header 'exams' throughout, as incorrectly specified). Arrows-up navigation does not seem to work (just linearly)
Mac OS 10.5.8, VoiceOver ??? See note above.