Notice: This is a work in progress. Please submit feedback or suggestions.

Test: Example 1: Table with header cells in the top row only

Screen Reader support level: supported

Voice Control support level: not applicable

A simple table with header cells and no scope attributes

Run this test and and submit your results

On this page

Test HTML

open the test page

HTML source is too long to display here.

Dates and Versions of tested combinations

ATAT VersionBrowserBrowser versionOS versionDate tested
JAWS2018.1811.2Google Chrome7418092019-05-03
JAWS2018.1811.2Internet Explorer11.13418092019-05-03
JAWS2018.1811.2Firefox (desktop)6618092019-05-03
Narrator1809Microsoft Edge44.1776318092019-05-03
NVDA2018.1808.10Google Chrome7418092019-05-03
NVDA2018.2.1Firefox (desktop)61.0.118032018-07-30
Orca3.31.4Firefox (desktop)69Ubuntu 19.042019-09-14
TalkBack7.3.0Google Chrome (android)7672019-09-14
VoiceOver for iOS12.2Safari (iOS)12.212.22019-05-01
VoiceOver for macOS10.14.4Safari (macOS)12.110.14.42019-05-03

Summary of Screen Reader support by expectation

ExpectationJAWSNarratorNVDAOrcaTalkBackVoiceOver for iOSVoiceOver for macOS
table element
MUST convey an appropriate rolesupportedsupportedsupportedsupportedsupportedsupportedsupported
MUST convey the boundaries of the tablesupportedsupportedsupportedsupportedsupportedsupportedsupported
scope attribute
MUST convey the header according to context if scope is set to "auto"supportedsupportedsupportedsupportedsupportedsupportedsupported
th element
MUST convey that the cell is a headersupportedsupportedsupportedsupportedsupportedsupportedsupported
MUST convey the position of the header (row/column)supportedsupportedsupportedsupportedsupportedsupportedsupported
td element
MAY convey the table cell rolesupportedsupportedsupportedsupportedsupportedsupportedsupported
MUST convey the position of the header (row/column)supportedsupportedsupportedsupportedsupportedsupportedsupported

* means that some support is hidden behind settings

Summary of Voice Control support by expectation

ExpectationDragon Naturally SpeakingVoice Access for AndroidVoice Control for iOSVoice Control for MacOS
Not applicable

* means that some support is hidden behind settings

Detailed support results by expectation

Expectation for the table element: convey an appropriate role

Rationale: A user needs to be aware that they are navigating a table.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: NA

Grading method: Just one of the listed commands must pass for the expectation to pass.

This expectation is from the table element feature.

ATBrowserHas SupportOutputAction
Dragon Naturally SpeakingGoogle Chromenot applicable-More information
JAWSGoogle Chromeyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • Output: "table with 3 columns and 4 rows"
  • Result: (pass)
    • command: Up arrow (Read previous item)
    • Output: "table end"
More information
JAWSInternet Exploreryes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • Output: "table with 3 columns and 4 rows"
  • Result: (pass)
    • command: Up arrow (Read previous item)
    • Output: "table end"
More information
JAWSFirefox (desktop)yes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • Output: "table with 3 columns and 4 rows"
  • Result: (pass)
    • command: Up arrow (Read previous item)
    • Output: "table end"
More information
NarratorMicrosoft Edgeyes
  • Result: (pass)
    • command: Down arrow (Read next item (scan mode))
    • Output: "table, has 4 rows, 3 columns, header item, column header, row 1 of 4 column 1 of 3, date"
More information
NVDAGoogle Chromeyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • Output: "table with 4 rows and 3 columns, row 1 column 1, Date"
More information
NVDAFirefox (desktop)yes
  • Result: (pass)
    • command: down arrow (Read next item)
    • Output: "table with 4 rows and 3 columns, row 1 column 1, Date"
More information
OrcaFirefox (desktop)yes
  • Result: (pass)
    • command: down arrow (Read next item)
    • Output: "table with 4 rows, 3 columns, date column header, event column header, venu column header"
More information
TalkBackGoogle Chrome (android)yes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • Output: "Date, column header, row 1, in grid, 4 rows, 3 columns"
More information
Voice Access for AndroidGoogle Chrome (android)not applicable-More information
Voice Control for iOSSafari (iOS)not applicable-More information
Voice Control for MacOSSafari (macOS)not applicable-More information
VoiceOver for iOSSafari (iOS)yes
  • Result: (pass)
    • command: Swipe Right (Next item)
    • Output: "date, row 1 column 1, table start 4 rows, 3 columns"
  • Result: (pass)
    • command: Swipe Right (Next item)
    • Output: "venue, main hall, row 4, column 3, table end"
More information
VoiceOver for macOSSafari (macOS)yes
  • Result: (pass)
    • command: VO + Right arrow (Read next item)
    • Output: "table, 3 columns, 4 rows"
  • Result: (pass)
    • command: VO + Left Arrow (Read previous item)
    • Output: "end of table"
More information

Extended Support for: table element: convey an appropriate role

These are less common combinations

ATBrowserHas SupportOutputAction
Dragon Naturally SpeakingInternet Explorernot applicable-More information
Dragon Naturally SpeakingFirefox (desktop)not applicable-More information
JAWSMicrosoft Edgeunknown-More information
NarratorFirefox (desktop)unknown-More information
NarratorGoogle Chromeunknown-More information
NarratorInternet Explorerunknown-More information
NVDAInternet Explorerunknown-More information
NVDAMicrosoft Edgeunknown-More information
TalkBackFirefox (Android)unknown-More information
Voice Access for AndroidFirefox (Android)not applicable-More information
VoiceOver for iOSGoogle Chrome (ios)unknown-More information
VoiceOver for macOSGoogle Chromeunknown-More information
VoiceOver for macOSFirefox (desktop)unknown-More information
OrcaGoogle Chromeunknown-More information
Voice Control for MacOSGoogle Chromenot applicable-More information
Voice Control for MacOSFirefox (desktop)not applicable-More information
Back to top

Expectation for the table element: convey the boundaries of the table

Rationale: A user needs to know when they enter and exit an element

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: NA

Examples of assistive technologies support this expectation:

  • A screen reader might announce the role of the element when entering and say something like "leaving" when exiting.
  • A screen reader might not explicitly announce entering and existing the element, but instead imply that the is in the containing object by conveying the roles of required children (options in a listbox for example).
  • A screen reader might announce position in set information such as "1 of 6".
  • A screen reader might not convey boundaries if the content fits on a single line

Grading method: All of the listed commands must pass for the expectation to pass.

This expectation is from the table element feature.

ATBrowserHas SupportOutputAction
Dragon Naturally SpeakingGoogle Chromenot applicable-More information
JAWSGoogle Chromeyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • Output: "table with 3 columns and 4 rows"
  • Result: (pass)
    • command: Up arrow (Read previous item)
    • Output: "table end"
More information
JAWSInternet Exploreryes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • Output: "table with 3 columns and 4 rows"
  • Result: (pass)
    • command: Up arrow (Read previous item)
    • Output: "table end"
More information
JAWSFirefox (desktop)yes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • Output: "table with 3 columns and 4 rows"
  • Result: (pass)
    • command: Up arrow (Read previous item)
    • Output: "table end"
More information
NarratorMicrosoft Edgeyes
  • Result: (pass)
    • command: Down arrow (Read next item (scan mode))
    • Output: "table exit, text after the table"
  • Result: (pass)
    • command: Up arrow (Read previous item (scan mode))
    • Output: "table exit, text before the table"
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: "no next cell in column"
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: "no next cell in row"
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: "no previous cell in column"
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: "no previous cell in row"
More information
NVDAGoogle Chromeyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • Output: "table with 4 rows and 3 columns, row 1 column 1, Date"
  • Result: (pass)
    • command: down arrow (Read next item)
    • Output: "out of table, text after the table"
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: "edge of table"
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: "edge of table"
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: "edge of table"
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: "edge of table"
More information
NVDAFirefox (desktop)yes
  • Result: (pass)
    • command: down arrow (Read next item)
    • Output: "table with 4 rows and 3 columns, row 1 column 1, Date"
  • Result: (pass)
    • command: down arrow (Read next item)
    • Output: "out of table, text after the tabl"e
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: "edge of table"
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: vedge of table"
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: "edge of table"
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: "edge of table"
More information
OrcaFirefox (desktop)yes
  • Result: (pass)
    • command: down arrow (Read next item)
    • location before command: before target
    • location after command: start of target
    • Output: "table with 4 rows, 3 columns, date column header, event column header, venu column header"
  • Result: (pass)
    • command: down arrow (Read next item)
    • location before command: within target
    • location after command: after target
    • Output: "leaving table"
  • Result: (pass)
    • command: alt + shift + right arrow (Move to next column)
    • Output: "end of row"
  • Result: (pass)
    • command: alt + shift + left arrow (Move to previous column)
    • Output: "beginning of row"
  • Result: (pass)
    • command: alt + shift + down arrow (Move to next row)
    • Output: "bottom of column"
  • Result: (pass)
    • command: alt + shift + up arrow (Move to previous row)
    • Output: "top of column"
More information
TalkBackGoogle Chrome (android)yes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • Output: "Date, column header, row 1, in grid, 4 rows, 3 columns"
  • Result: (pass)
    • command: Swipe right (Read next item)
    • Output: "out of grid"
More information
Voice Access for AndroidGoogle Chrome (android)not applicable-More information
Voice Control for iOSSafari (iOS)not applicable-More information
Voice Control for MacOSSafari (macOS)not applicable-More information
VoiceOver for iOSSafari (iOS)yes
  • Result: (pass)
    • command: Swipe Right (Next item)
    • Output: "date, row 1 column 1, table start 4 rows, 3 columns"
  • Result: (pass)
    • command: Swipe Right (Next item)
    • Output: "venue, main hall, row 4, column 3, table end"
More information
VoiceOver for macOSSafari (macOS)yes
  • Result: (pass)
    • command: VO + Right arrow (Read next item)
    • Output: "table, 3 columns, 4 rows"
  • Result: (pass)
    • command: VO + Left Arrow (Read previous item)
    • Output: "end of table"
More information

Extended Support for: table element: convey the boundaries of the table

These are less common combinations

ATBrowserHas SupportOutputAction
Dragon Naturally SpeakingInternet Explorernot applicable-More information
Dragon Naturally SpeakingFirefox (desktop)not applicable-More information
JAWSMicrosoft Edgeunknown-More information
NarratorFirefox (desktop)unknown-More information
NarratorGoogle Chromeunknown-More information
NarratorInternet Explorerunknown-More information
NVDAInternet Explorerunknown-More information
NVDAMicrosoft Edgeunknown-More information
TalkBackFirefox (Android)unknown-More information
Voice Access for AndroidFirefox (Android)not applicable-More information
VoiceOver for iOSGoogle Chrome (ios)unknown-More information
VoiceOver for macOSGoogle Chromeunknown-More information
VoiceOver for macOSFirefox (desktop)unknown-More information
OrcaGoogle Chromeunknown-More information
Voice Control for MacOSGoogle Chromenot applicable-More information
Voice Control for MacOSFirefox (desktop)not applicable-More information
Back to top

Expectation for the scope attribute: convey the header according to context if scope is set to "auto"

Rationale: The user needs to be able to determine what headers a cell belongs to.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: NA

Grading method: Just one of the listed commands must pass for the expectation to pass.

This expectation is from the scope attribute feature.

ATBrowserHas SupportOutputAction
Dragon Naturally SpeakingGoogle Chromenot applicable-More information
JAWSGoogle Chromeyes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: "Event, Waltz with Strauss, column 2"
  • Result: (pass)
    • command: Control + Alt + Numpad 5 (Read current cell)
    • Output: "column 3, row 2, venue, main hall"
More information
JAWSInternet Exploreryes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: "Event, Waltz with Strauss, column 2"
  • Result: (pass)
    • command: Control + Alt + Numpad 5 (Read current cell)
    • Output: "column 3, row 2, venue, main hall"
More information
JAWSFirefox (desktop)yes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: "Event, Waltz with Strauss, column 2"
  • Result: (pass)
    • command: Control + Alt + Numpad 5 (Read current cell)
    • Output: "column 3, row 2, venue, main hall"
More information
NarratorMicrosoft Edgeyes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: "Waltz with Strauss, non-selected, column header Event, column 2 of 3"
  • Result: (pass)
    • command: Control + Shift + Alt + Up arrow (Read Column Header)
    • Output: "event, column header"
More information
NVDAGoogle Chromeyes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: "Event column 2, Waltz with Strauss"
  • Result: (pass)
    • command: up arrow (Read previous item)
    • Output: "row 2 Venue column 3, Main Hall"
More information
NVDAFirefox (desktop)yes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: "Event column 2, Waltz with Strauss"
  • Result: (pass)
    • command: up arrow (Read previous item)
    • Output: "row 2 Venue column 3, Main Hall"
More information
OrcaFirefox (desktop)yes
  • Result: (pass)
    • command: alt + shift + right arrow (Move to next column)
    • Output: "Event, Waltz with Strauss, row 2, column 2"
More information
TalkBackGoogle Chrome (android)yes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • Output: "Waltz with Strauss, event"
More information
Voice Access for AndroidGoogle Chrome (android)not applicable-More information
Voice Control for iOSSafari (iOS)not applicable-More information
Voice Control for MacOSSafari (macOS)not applicable-More information
VoiceOver for iOSSafari (iOS)yes
  • Result: (fail)
    • command: Swipe Right (Next item)
    • Output: "event, column 2"
  • Result: (fail)
    • command: Swipe Right (Next item)
    • Output: (starting from position 3,0 'venu') "February 12, row 2 column 1"
  • Result: (pass)
    • command: Swipe Left (Previous item)
    • Output: (starting from position 1,1 'waltz with strauss') "Date, February 12, row 2 column 1"
  • Result: (fail)
    • command: three-finger tap (Read additional information about the current position)
    • Output: "row 2 column 1"
More information
VoiceOver for macOSSafari (macOS)yes
  • Result: (pass)
    • command: VO + Right Arrow (Move to Next Column)
    • Output: "Event, Waltz with Strauss. column 2 of 3"
  • Result: (fail)
    • command: VO + C (Read Column Header)
    • Output: (nothing)
More information

Extended Support for: scope attribute: convey the header according to context if scope is set to "auto"

These are less common combinations

ATBrowserHas SupportOutputAction
Dragon Naturally SpeakingInternet Explorernot applicable-More information
Dragon Naturally SpeakingFirefox (desktop)not applicable-More information
JAWSMicrosoft Edgeunknown-More information
NarratorFirefox (desktop)unknown-More information
NarratorGoogle Chromeunknown-More information
NarratorInternet Explorerunknown-More information
NVDAInternet Explorerunknown-More information
NVDAMicrosoft Edgeunknown-More information
TalkBackFirefox (Android)unknown-More information
Voice Access for AndroidFirefox (Android)not applicable-More information
VoiceOver for iOSGoogle Chrome (ios)unknown-More information
VoiceOver for macOSGoogle Chromeunknown-More information
VoiceOver for macOSFirefox (desktop)unknown-More information
OrcaGoogle Chromeunknown-More information
Voice Control for MacOSGoogle Chromenot applicable-More information
Voice Control for MacOSFirefox (desktop)not applicable-More information
Back to top

Expectation for the th element: convey that the cell is a header

Rationale: A user needs to be able to determine what headers apply to a given cell.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: NA

Grading method: Just one of the listed commands must pass for the expectation to pass.

This expectation is from the th element feature.

ATBrowserHas SupportOutputAction
Dragon Naturally SpeakingGoogle Chromenot applicable-More information
JAWSGoogle Chromeyes
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (cell is announced as the header as you transition between columns)
More information
JAWSInternet Exploreryes
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (cell is announced as the header as you transition between columns)
More information
JAWSFirefox (desktop)yes
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (cell is announced as the header as you transition between columns)
More information
NarratorMicrosoft Edgeyes
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (cell is announced as the header as you transition between columns)
More information
NVDAGoogle Chromeyes
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (cell is announced as the header as you transition between columns)
More information
NVDAFirefox (desktop)yes
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (cell is announced as the header as you transition between columns)
More information
OrcaFirefox (desktop)yes
  • Result: (pass)
    • command: alt + shift + down arrow (Move to next row)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: alt + shift + up arrow (Move to previous row)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: alt + shift + right arrow (Move to next column)
    • Output: (cell is announced as the header as you transition between columns)
  • Result: (pass)
    • command: alt + shift + left arrow (Move to previous column)
    • Output: (cell is announced as the header as you transition between columns)
More information
TalkBackGoogle Chrome (android)yes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • Output: "Venue, column header"
More information
Voice Access for AndroidGoogle Chrome (android)not applicable-More information
Voice Control for iOSSafari (iOS)not applicable-More information
Voice Control for MacOSSafari (macOS)not applicable-More information
VoiceOver for iOSSafari (iOS)yes
  • Result: (fail)
    • command: Swipe Right (Next item)
    • Output: "event, column 2"
  • Result: (pass)
    • command: Swipe Left (Previous item)
    • Output: "event, waltz with strauss, column 2"
More information
VoiceOver for macOSSafari (macOS)yes
  • Result: (pass)
    • command: VO + Right Arrow (Move to Next Column)
    • Output: "Event, column 2 of 3"
  • Result: (fail)
    • command: VO + C (Read Column Header)
    • Output: (nothing)
More information

Extended Support for: th element: convey that the cell is a header

These are less common combinations

ATBrowserHas SupportOutputAction
Dragon Naturally SpeakingInternet Explorernot applicable-More information
Dragon Naturally SpeakingFirefox (desktop)not applicable-More information
JAWSMicrosoft Edgeunknown-More information
NarratorFirefox (desktop)unknown-More information
NarratorGoogle Chromeunknown-More information
NarratorInternet Explorerunknown-More information
NVDAInternet Explorerunknown-More information
NVDAMicrosoft Edgeunknown-More information
TalkBackFirefox (Android)unknown-More information
Voice Access for AndroidFirefox (Android)not applicable-More information
VoiceOver for iOSGoogle Chrome (ios)unknown-More information
VoiceOver for macOSGoogle Chromeunknown-More information
VoiceOver for macOSFirefox (desktop)unknown-More information
OrcaGoogle Chromeunknown-More information
Voice Control for MacOSGoogle Chromenot applicable-More information
Voice Control for MacOSFirefox (desktop)not applicable-More information
Back to top

Expectation for the th element: convey the position of the header (row/column)

Rationale: A user needs to be able to determine where they are while navigating a table.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: NA

Grading method: Just one of the listed commands must pass for the expectation to pass.

This expectation is from the th element feature.

ATBrowserHas SupportOutputAction
Dragon Naturally SpeakingGoogle Chromenot applicable-More information
JAWSGoogle Chromeyes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (position information is announced as column and rows are changed)
More information
JAWSInternet Exploreryes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (position information is announced as column and rows are changed)
More information
JAWSFirefox (desktop)yes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (position information is announced as column and rows are changed)
More information
NarratorMicrosoft Edgeyes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (position information is announced as column and rows are changed)
More information
NVDAGoogle Chromeyes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (position information is announced as column and rows are changed)
More information
NVDAFirefox (desktop)yes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (position information is announced as column and rows are changed)
More information
OrcaFirefox (desktop)yes
  • Result: (pass)
    • command: alt + shift + right arrow (Move to next column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: alt + shift + left arrow (Move to previous column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: alt + shift + down arrow (Move to next row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: alt + shift + up arrow (Move to previous row)
    • Output: (position information is announced as column and rows are changed)
More information
TalkBackGoogle Chrome (android)yes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • Output: (position information is announced as column and rows are changed)
More information
Voice Access for AndroidGoogle Chrome (android)not applicable-More information
Voice Control for iOSSafari (iOS)not applicable-More information
Voice Control for MacOSSafari (macOS)not applicable-More information
VoiceOver for iOSSafari (iOS)yes
  • Result: (pass)
    • command: Swipe Right (Next item)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Swipe Left (Previous item)
    • Output: (position information is announced as column and rows are changed)
More information
VoiceOver for macOSSafari (macOS)yes
  • Result: (pass)
    • command: VO + Right Arrow (Move to Next Column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: VO + Left Arrow (Move to Previous Column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: VO + Down Arrow (Move to Next Row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: VO + Up Arrow (Move to Previous Row)
    • Output: (position information is announced as column and rows are changed)
More information

Extended Support for: th element: convey the position of the header (row/column)

These are less common combinations

ATBrowserHas SupportOutputAction
Dragon Naturally SpeakingInternet Explorernot applicable-More information
Dragon Naturally SpeakingFirefox (desktop)not applicable-More information
JAWSMicrosoft Edgeunknown-More information
NarratorFirefox (desktop)unknown-More information
NarratorGoogle Chromeunknown-More information
NarratorInternet Explorerunknown-More information
NVDAInternet Explorerunknown-More information
NVDAMicrosoft Edgeunknown-More information
TalkBackFirefox (Android)unknown-More information
Voice Access for AndroidFirefox (Android)not applicable-More information
VoiceOver for iOSGoogle Chrome (ios)unknown-More information
VoiceOver for macOSGoogle Chromeunknown-More information
VoiceOver for macOSFirefox (desktop)unknown-More information
OrcaGoogle Chromeunknown-More information
Voice Control for MacOSGoogle Chromenot applicable-More information
Voice Control for MacOSFirefox (desktop)not applicable-More information
Back to top

Expectation for the td element: convey the table cell role

Rationale: A table can only contain cells of information, so the role is usually implied.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MAY
  • Voice Control: NA

Grading method: Just one of the listed commands must pass for the expectation to pass.

This expectation is from the td element feature.

ATBrowserHas SupportOutputAction
Dragon Naturally SpeakingGoogle Chromenot applicable-More information
JAWSGoogle Chromeyes
  • Result: (pass)
    • command: Up arrow (Read previous item)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (no header semantics surfaced, which implies that this is a cell)
More information
JAWSInternet Exploreryes
  • Result: (pass)
    • command: Up arrow (Read previous item)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (no header semantics surfaced, which implies that this is a cell)
More information
JAWSFirefox (desktop)yes
  • Result: (pass)
    • command: Up arrow (Read previous item)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (no header semantics surfaced, which implies that this is a cell)
More information
NarratorMicrosoft Edgeyes
  • Result: (pass)
    • command: Up arrow (Read previous item (scan mode))
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (no header semantics surfaced, which implies that this is a cell)
More information
NVDAGoogle Chromeyes
  • Result: (pass)
    • command: up arrow (Read previous item)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (no header semantics surfaced, which implies that this is a cell)
More information
NVDAFirefox (desktop)yes
  • Result: (pass)
    • command: up arrow (Read previous item)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (no header semantics surfaced, which implies that this is a cell)
More information
OrcaFirefox (desktop)yes
  • Result: (pass)
    • command: up arrow (Read previous item)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: alt + shift + right arrow (Move to next column)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: alt + shift + down arrow (Move to next row)
    • Output: (no header semantics surfaced, which implies that this is a cell)
More information
TalkBackGoogle Chrome (android)yes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • Output: (no header semantics surfaced, which implies that this is a cell)
More information
Voice Access for AndroidGoogle Chrome (android)not applicable-More information
Voice Control for iOSSafari (iOS)not applicable-More information
Voice Control for MacOSSafari (macOS)not applicable-More information
VoiceOver for iOSSafari (iOS)yes
  • Result: (pass)
    • command: Swipe Right (Next item)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: Swipe Left (Previous item)
    • Output: (no header semantics surfaced, which implies that this is a cell)
More information
VoiceOver for macOSSafari (macOS)yes
  • Result: (pass)
    • command: VO + Left Arrow (Read previous item)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: VO + Right Arrow (Move to Next Column)
    • Output: (no header semantics surfaced, which implies that this is a cell)
  • Result: (pass)
    • command: VO + Down Arrow (Move to Next Row)
    • Output: (no header semantics surfaced, which implies that this is a cell)
More information

Extended Support for: td element: convey the table cell role

These are less common combinations

ATBrowserHas SupportOutputAction
Dragon Naturally SpeakingInternet Explorernot applicable-More information
Dragon Naturally SpeakingFirefox (desktop)not applicable-More information
JAWSMicrosoft Edgeunknown-More information
NarratorFirefox (desktop)unknown-More information
NarratorGoogle Chromeunknown-More information
NarratorInternet Explorerunknown-More information
NVDAInternet Explorerunknown-More information
NVDAMicrosoft Edgeunknown-More information
TalkBackFirefox (Android)unknown-More information
Voice Access for AndroidFirefox (Android)not applicable-More information
VoiceOver for iOSGoogle Chrome (ios)unknown-More information
VoiceOver for macOSGoogle Chromeunknown-More information
VoiceOver for macOSFirefox (desktop)unknown-More information
OrcaGoogle Chromeunknown-More information
Voice Control for MacOSGoogle Chromenot applicable-More information
Voice Control for MacOSFirefox (desktop)not applicable-More information
Back to top

Expectation for the td element: convey the position of the header (row/column)

Rationale: A user needs to be able to determine where they are while navigating a table.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: NA

Grading method: Just one of the listed commands must pass for the expectation to pass.

This expectation is from the td element feature.

ATBrowserHas SupportOutputAction
Dragon Naturally SpeakingGoogle Chromenot applicable-More information
JAWSGoogle Chromeyes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (position information is announced as column and rows are changed)
More information
JAWSInternet Exploreryes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (position information is announced as column and rows are changed)
More information
JAWSFirefox (desktop)yes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (position information is announced as column and rows are changed)
More information
NarratorMicrosoft Edgeyes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (position information is announced as column and rows are changed)
More information
NVDAGoogle Chromeyes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (position information is announced as column and rows are changed)
More information
NVDAFirefox (desktop)yes
  • Result: (pass)
    • command: Control + Alt + Right arrow (Move to next column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + Left arrow (Move to previous column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + up arrow (Move to next row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Control + Alt + down arrow (Move to previous row)
    • Output: (position information is announced as column and rows are changed)
More information
OrcaFirefox (desktop)yes
  • Result: (pass)
    • command: alt + shift + right arrow (Move to next column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: alt + shift + left arrow (Move to previous column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: alt + shift + down arrow (Move to next row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: alt + shift + up arrow (Move to previous row)
    • Output: (position information is announced as column and rows are changed)
More information
TalkBackGoogle Chrome (android)yes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • Output: (position information is announced as column and rows are changed)
More information
Voice Access for AndroidGoogle Chrome (android)not applicable-More information
Voice Control for iOSSafari (iOS)not applicable-More information
Voice Control for MacOSSafari (macOS)not applicable-More information
VoiceOver for iOSSafari (iOS)yes
  • Result: (pass)
    • command: Swipe Right (Next item)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: Swipe Left (Previous item)
    • Output: (position information is announced as column and rows are changed)
More information
VoiceOver for macOSSafari (macOS)yes
  • Result: (pass)
    • command: VO + Right Arrow (Move to Next Column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: VO + Left Arrow (Move to Previous Column)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: VO + Down Arrow (Move to Next Row)
    • Output: (position information is announced as column and rows are changed)
  • Result: (pass)
    • command: VO + Up Arrow (Move to Previous Row)
    • Output: (position information is announced as column and rows are changed)
More information

Extended Support for: td element: convey the position of the header (row/column)

These are less common combinations

ATBrowserHas SupportOutputAction
Dragon Naturally SpeakingInternet Explorernot applicable-More information
Dragon Naturally SpeakingFirefox (desktop)not applicable-More information
JAWSMicrosoft Edgeunknown-More information
NarratorFirefox (desktop)unknown-More information
NarratorGoogle Chromeunknown-More information
NarratorInternet Explorerunknown-More information
NVDAInternet Explorerunknown-More information
NVDAMicrosoft Edgeunknown-More information
TalkBackFirefox (Android)unknown-More information
Voice Access for AndroidFirefox (Android)not applicable-More information
VoiceOver for iOSGoogle Chrome (ios)unknown-More information
VoiceOver for macOSGoogle Chromeunknown-More information
VoiceOver for macOSFirefox (desktop)unknown-More information
OrcaGoogle Chromeunknown-More information
Voice Control for MacOSGoogle Chromenot applicable-More information
Voice Control for MacOSFirefox (desktop)not applicable-More information
Back to top

History

  • 2019-05-10 Test created
  • 2019-09-14 Add orca and talkback results