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

Test: HTML input with datalist test

Screen Reader support level: partial (83/110)

Voice Control support level: partial (12/24)

On this page

About this test

A sample datalist attached to a text input. Provide feedback on this test and results in issue #73

Run this test and and submit your results

Age of results

Results in this test range from 3 months ago to 4 months ago. See detailed information about test dates and versions for more information.

Failing and partial results are between 4 months ago and 4 months ago.

Test HTML

open the test page

HTML source is too long to display here.

Summary of Screen Reader support by expectation

ExpectationJAWSNarratorNVDAOrcaTalkBackVoiceOver (iOS)VoiceOver (macOS)
ChromeIEFirefoxEdgeChromeFirefoxFirefoxChromeSafariSafari
datalist element
MUST convey its rolesupportednonesupportedsupportedsupportedsupportedpartialsupportedsupportednone
MUST convey the boundaries of the elementsupportednonesupportedsupportedsupportedsupportedsupportedsupportedsupportednone
MUST convey that changes in suggestions were madenonenonenonesupportednonenonenonesupportednonenone
input[type="text"] element
MUST convey its namesupportedsupportedsupportedsupportedsupportedsupportedsupportedsupportedsupportedsupported
MUST convey its rolesupportedsupportedsupportedsupportedsupportedsupportedsupportedsupportedsupportedsupported
MUST convey the current valuesupportedsupportedsupportedsupportedsupportedsupportedsupportedsupportedsupportedsupported
MUST convey changes in valuesupportedpartialsupportedsupportedsupportedsupportedsupportedsupportedsupportedsupported
SHOULD provide shortcuts to jump to this rolesupportedsupportedsupportedsupportedsupportedsupportedsupportedsupportedsupportedsupported
list attribute
MUST convey the presence of the list attribute applied to: input[type="text"] elementsupportednonesupportedsupportedsupportedsupportednonesupportedsupportedsupported
option element
MUST convey its namesupportednonesupportedsupportedsupportedsupportedsupportedsupportednonenone
MUST convey its rolesupportednonesupportedsupportedsupportedsupportedpartialsupportedsupportednone
MUST convey the value of the option when used in a datalist contextsupportednonesupportednonesupportednonenonesupportedsupportednone
MAY convey information about the position the option in the listsupportednonesupportedsupportedsupportedsupportednonenonenonenone

* means that some support is hidden behind settings

Summary of Voice Control support by expectation

* means that some support is hidden behind settings

Detailed support results by expectation

Expectation for the datalist element: convey its role

Rationale: A screen reader user needs to know how they can interact with the element. Voice control software might use the role to help users activate controls that do not have a visible name.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: MUST

Examples of assistive technologies support this expectation:

  • A screen reader might announce something like the "datalist", "listbox" role when entering the datalist. Note that it should not be conveyed as a menu per the AAM mappings.
  • A screen reader might not announce the datalist role because it is implied by the presence of suggestions or auto complete functionality via the list attribute.
  • Voice control software might let the user say something like "show choices" to open the datalist.

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

This expectation is from the datalist element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromeyes
  • Result: (pass)
    • command: "Show choices" (Show drop down choices)
    • Output: suggestions were displayed
JAWSChromeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Auto fill list box expanded, Function, 1 of 6, To move to an item press the arrow keys"
    • Result Notes: implied by the text "list box expanded"
Notes: The datalist is conveyed as a menu as opposed to a listbox.
JAWSIEnone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Blank", skipped the suggestions and started reading the content after the input.
JAWSFirefoxyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function, 1 of 6, to move to an item press the arrow keys"
    • Command Notes: observation: sometimes pressing down arrow will not move virtual focus to an option in the list, but instead to content after the input. Not able to reproduce consistently.
NarratorEdgeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function, 1 of 6, selected"
Notes: The datalist role is implied by the "combo" role and "suggestions" announcement.
NVDAChromeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "auto fill list expanded, function, 1 of 6"
Notes: The datalist role is implied by the "has auto complete" announcement for the text input, combined with down arrow navigating suggestions. However, table semantics were also announced when none exist.
NVDAFirefoxyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "list, function, 1 of 6"
Notes: The datalist role is implied by the "has auto complete" announcement for the text input, combined with down arrow navigating suggestions. However, all options are announced as "blank".
OrcaFirefoxpartial
  • Result: (partial)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "menu, function"
    • Result Notes: data list is conveyed as a menu instead of a listbox
TalkBackChromeyes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "autofill, menu, disabled", swipe right again, "function, in list, showing autofill popup, 6 items"
    • Command Notes: the disabled state was incorrectly conveyed
Voice Access (Android)Chromenot applicable-
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinot applicable-
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • command: Explore the keyboard by single press + move (explore), then release on a key (touch type with virtual keyboard)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function, prediction"
    • Result Notes: implied by the prediction roles
Notes: Suggestions are listed in the normal virtual keyboard predictions. However, there is no indication that these predictions are suggestions from the website, and may be confused with the normal virtual keyboard predictions.
VoiceOver (macOS)Safarinone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: not possible to navigate to datalist and suggestions are not announced
Windows Speech RecognitionChromenot applicable-

Extended Support for: datalist element: convey its role

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEunknown-
Dragon Naturally SpeakingFirefoxunknown-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxnot applicable-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromenot applicable-
Voice Control (MacOS)Firefoxnot applicable-
Windows Speech Recognition 1903Edge 44not applicable-
Back to top

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

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 datalist element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenot applicable-
JAWSChromeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Auto fill list box expanded, Function, 1 of 6, To move to an item press the arrow keys"
    • Result Notes: opening was conveyed as well as posinset
JAWSIEnone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Blank", skipped the suggestions and started reading the content after the input.
JAWSFirefoxyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function, 1 of 6, to move to an item press the arrow keys"
    • Command Notes: observation: sometimes pressing down arrow will not move virtual focus to an option in the list, but instead to content after the input. Not able to reproduce consistently.
NarratorEdgeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: start of target
    • Output: "function, 1 of 6, selected"
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: within target
      • virtual cursor location: within target
    • location after command: end of target
    • Output: "async generator function, 6 of 6, selected"
NVDAChromeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "auto fill list expanded, function, 1 of 6"
NVDAFirefoxyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: async generator function, 6 of 6
OrcaFirefoxyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "menu, function"
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: within target
      • virtual cursor location: within target
    • location after command: end of target
    • Output: focus is sent back to the input and the input is announced
Notes: boundaries are implied by the menu and focus being sent back to the input
TalkBackChromeyes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "autofill, menu, disabled", swipe right again, "function, in list, showing autofill popup, 6 items"
    • Command Notes: the disabled state was incorrectly conveyed
Voice Access (Android)Chromenot applicable-
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinot applicable-
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • command: Explore the keyboard by single press + move (explore), then release on a key (touch type with virtual keyboard)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function, prediction"
  • Result: (pass)
    • command: Swipe Right (Next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function, prediction"
Notes: Boundaries can be implied by the role of "prediction" being announced for each available prediction. In other words, when the user hears a different role announced, they can assume they left the predictions.
VoiceOver (macOS)Safarinone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: not possible to navigate to datalist and suggestions are not announced
Windows Speech RecognitionChromenot applicable-

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

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEnot applicable-
Dragon Naturally SpeakingFirefoxnot applicable-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxnot applicable-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromenot applicable-
Voice Control (MacOS)Firefoxnot applicable-
Windows Speech Recognition 1903Edge 44not applicable-
Back to top

Expectation for the datalist element: convey that changes in suggestions were made

Rationale: The user needs to know that the list of suggestions changed

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 word "suggestions" whenever the list of suggestions changes.
  • A screen reader might announce the value of every suggestion when the list of suggestions changes.

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

This expectation is from the datalist element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenot applicable-
JAWSChromenone
  • Result: (fail)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: The entered character was announced, but no information about changes to the suggestions
JAWSIEnone
  • Result: (fail)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: The entered character was announced, but no information about changes to the suggestions
JAWSFirefoxnone
  • Result: (fail)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: The entered character was announced, but no information about changes to the suggestions
NarratorEdgeyes
  • Result: (pass)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: "suggestions" is announced every time the suggestions change
NVDAChromenone
  • Result: (fail)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: The entered character was announced, but no information about changes to the suggestions
NVDAFirefoxnone
  • Result: (fail)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: The entered character was announced, but no information about changes to the suggestions
OrcaFirefoxnone
  • Result: (fail)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: no announcements
TalkBackChromeyes
  • Result: (pass)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: showing items 1 of 6
Voice Access (Android)Chromenot applicable-
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinot applicable-
VoiceOver (iOS)Safarinone
  • Result: (fail)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: The entered character was announced, but no information about changes to the suggestions
VoiceOver (macOS)Safarinone
  • Result: (fail)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: no announcement made
Windows Speech RecognitionChromenot applicable-

Extended Support for: datalist element: convey that changes in suggestions were made

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEnot applicable-
Dragon Naturally SpeakingFirefoxnot applicable-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxnot applicable-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromenot applicable-
Voice Control (MacOS)Firefoxnot applicable-
Windows Speech Recognition 1903Edge 44not applicable-
Back to top

Expectation for the input[type="text"] element: convey its name

Rationale: A screen reader user needs to know what to enter.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: MUST

Examples of assistive technologies support this expectation:

  • A screen reader will announce the name (label).
  • Voice control software will let the user say something like "click <name>" to activate the control.

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

Notes: For form inputs - commands to read line by line (down and up arrows in most windows screen readers) will not always result in the name being explicitly conveyed when the virtual focus is moved to an input where the label is visually displayed and programmatically associated with the input. This is acceptable because the name is implied by the fact that it should be naturally found in the reading order. Some screen readers choose to not convey the name in these cases, likely in an effort to reduce verbosity.

This expectation is from the input[type="text"] element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromeyes
  • Result: (pass)
    • command: "Click <text>" (Activate item by name)
    • Output: text input was focused
JAWSChromeyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Edit combo"
    • Result Notes: name implied by reading order
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, edit combo, to set the value use the arrow keys or type the value."
JAWSIEyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "edit, function type, edit, type in text"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Edit, type in text"
JAWSFirefoxyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function type, edit, has popup, function, type in text"
    • Result Notes: announced the name when entering the input.
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Edit has popup, type in text"
NarratorEdgeyes
  • Result: (pass)
    • command: Down arrow (Read next item (scan mode))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo edit, scan off."
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo edit, scan off, suggestions available."
NVDAChromeyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo box, has auto complete, editable."
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo box, has auto complete, editable. Blank."
NVDAFirefoxyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "clickable, Function type, Edit subMenu, has auto complete, function"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Edit has auto complete. selected function."
OrcaFirefoxyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function type, entry"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function type, entry, focus mode"
TalkBackChromeyes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "edit box, function type, double-tap to edit text, edit options available"
Voice Access (Android)Chromenone
  • Result: (fail)
    • command: "Tap <text>" or just "<text>" (Activate item by name)
    • Output: input was not focused
    • Command Notes: said "tap function type"
Voice Control (iOS)Safariyes
  • Result: (pass)
    • command: "Tap <text>" (Activate item by name)
    • Output: input was focused
    • Command Notes: said "tap function type"
Voice Control (MacOS)Safariyes
  • Result: (pass)
    • command: "Click <text>" (Activate item by name)
    • Output: input was focused
    • Command Notes: said "click function type"
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • command: Swipe Right (Next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, text field, list box popup, double tap to edit."
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • command: VO + Right arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, list box popup, edit text"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, list box popup, edit text"
Windows Speech RecognitionChromeyes
  • Result: (pass)
    • command: "Click <text>" (Activate item by name)
    • Output: role was activated
    • Command Notes: said "click function type"

Extended Support for: input[type="text"] element: convey its name

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEunknown-
Dragon Naturally SpeakingFirefoxunknown-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxunknown-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromeunknown-
Voice Control (MacOS)Firefoxunknown-
Windows Speech Recognition 1903Edge 44yes
  • Result: (pass)
    • command: "Click <text>" (Activate item by name)
    • Output: role was activated
    • Command Notes: said "click function type"
Back to top

Expectation for the input[type="text"] element: convey its role

Rationale: A screen reader user needs to know how they can interact with the element. Voice control software might use the role to help users activate controls that do not have a visible name.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: MUST

Examples of assistive technologies support this expectation:

  • A screen reader might be announce the role as "text input", "edit", "edit text", etc.
  • A screen reader might announce a modified role when a datalist is attached, such as "combo box".
  • Voice control software will let the user say something like "click text box" to focus a the input or flag the role with a number.

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

This expectation is from the input[type="text"] element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromeyes
  • Result: (pass)
    • command: Click <role> (Click Type)
    • Output: text input was focused
JAWSChromeyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Edit combo"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, edit combo, to set the value use the arrow keys or type the value."
Notes: The role is not consistently conveyed across browsers, and is often presented with a modifier ("combo" or "has popup") to convey the presence of the datalist.
JAWSIEyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "edit, function type, edit, type in text"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Edit, type in text"
Notes: When paired with IE, JAWS does not alter the role to convey the datalist functionality.
JAWSFirefoxyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function type, edit, has popup, function, type in text"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Edit has popup, type in text"
Notes: The role is not consistently conveyed across browsers, and is often presented with a modifier ("combo" or "has popup") to convey the presence of the datalist.
NarratorEdgeyes
  • Result: (pass)
    • command: Down arrow (Read next item (scan mode))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo edit, scan off."
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo edit, scan off, suggestions available."
NVDAChromeyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo box, has auto complete, editable."
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo box, has auto complete, editable. Blank."
Notes: The role is not consistently conveyed across browsers, and is often presented with a modifier ("combo box" or "has popup") to convey the presence of the datalist.
NVDAFirefoxyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "clickable, Function type, Edit subMenu, has auto complete, function"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Edit has auto complete. selected function."
Notes: The role is not consistently conveyed across browsers, and is often presented with a modifier ("combo box" or "subMenu") to convey the presence of the datalist.
OrcaFirefoxyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function type, entry"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function type, entry, focus mode"
TalkBackChromeyes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "edit box, function type, double-tap to edit text, edit options available"
Voice Access (Android)Chromeyes
  • Result: (pass)
    • command: "Show numbers" (Turn on the numbers overlay)
    • Output: role was flagged with a number
    • Command Notes: said "show numbers"
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safariyes
  • Result: (pass)
    • command: "Show numbers" (Turn on the numbers overlay)
    • Output: role was flagged with a number
    • Command Notes: said "show numbers"
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • command: Swipe Right (Next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, text field, list box popup, double tap to edit."
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • command: VO + Right arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, list box popup, edit text"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, list box popup, edit text"
Windows Speech RecognitionChromeyes
  • Result: (pass)
    • command: "Show numbers" (Turn on the numbers overlay)
    • Output: role was flagged with a number
    • Command Notes: said "show numbers"

Extended Support for: input[type="text"] element: convey its role

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEunknown-
Dragon Naturally SpeakingFirefoxunknown-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxunknown-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromeunknown-
Voice Control (MacOS)Firefoxunknown-
Windows Speech Recognition 1903Edge 44yes
  • Result: (pass)
    • command: "Show numbers" (Turn on the numbers overlay)
    • Output: role was flagged with a number
    • Command Notes: said "show numbers"
Back to top

Expectation for the input[type="text"] element: convey the current value

Rationale: A screen reader user needs to know the current value of the input.

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 input[type="text"] element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenot applicable-
JAWSChromeyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Edit combo"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, edit combo, to set the value use the arrow keys or type the value."
JAWSIEyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "edit, function type, edit, type in text"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Edit, type in text"
JAWSFirefoxyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function type, edit, has popup, function, type in text"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Edit has popup, type in text"
NarratorEdgeyes
  • Result: (pass)
    • command: Down arrow (Read next item (scan mode))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo edit, scan off."
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo edit, scan off, suggestions available."
NVDAChromeyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo box, has auto complete, editable."
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo box, has auto complete, editable. Blank."
NVDAFirefoxyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "clickable, Function type, Edit subMenu, has auto complete, function"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Edit has auto complete. selected function."
OrcaFirefoxyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function type, entry"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function type, entry, focus mode"
TalkBackChromeyes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "edit box, function type, double-tap to edit text, edit options available"
Voice Access (Android)Chromenot applicable-
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinot applicable-
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • command: Swipe Right (Next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, text field, list box popup, double tap to edit."
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • command: VO + Right arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, list box popup, edit text"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, list box popup, edit text"
Windows Speech RecognitionChromenot applicable-

Extended Support for: input[type="text"] element: convey the current value

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEnot applicable-
Dragon Naturally SpeakingFirefoxnot applicable-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxnot applicable-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromenot applicable-
Voice Control (MacOS)Firefoxnot applicable-
Windows Speech Recognition 1903Edge 44not applicable-
Back to top

Expectation for the input[type="text"] element: convey changes in value

Rationale: The user needs to know that the value was successfully changed.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: NA

Examples of assistive technologies support this expectation:

  • When the user enter texts, the screen reader will announce it back to them.
  • When used with the datalist, the chosen suggestion should be announced after activating it.

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

This expectation is from the input[type="text"] element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenot applicable-
JAWSChromeyes
  • Result: (pass)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: (the entered character was announced)
  • Result: (pass)
    • command: Enter (select an option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "<window title> Function, type Edit combo, async function"
Notes: Focus was sent back to the input and the input was announced
JAWSIEpartial
  • Result: (pass)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: (the entered character was announced)
  • Result: (fail)
    • command: Enter (select an option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: unable to select an option
Notes: unknown because it was not possible to navigate to a suggestion to activate
JAWSFirefoxyes
  • Result: (pass)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: (the entered character was announced)
  • Result: (pass)
    • command: Enter (select an option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function, edit, has popup, async function, type in text" (input was re-announced with new value)
Notes: Unknown because it was not possible to navigate to a suggestion to activate
NarratorEdgeyes
  • Result: (pass)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: (the entered character was announced)
  • Result: (pass)
    • command: Enter (select an option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function" (new value was conveyed)
Notes: The value was announced after a suggestion was activated and focus was returned to the text input
NVDAChromeyes
  • Result: (pass)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: (the entered character was announced)
  • Result: (pass)
    • command: Enter (select an option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type combo box, has auto complete, editable, function"
Notes: Focus was returned to the text input
NVDAFirefoxyes
  • Result: (pass)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: (the entered character was announced)
  • Result: (pass)
    • command: Enter (select an option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: document title and input were re-announced with the new value
Notes: Focus was returned to the text input but only the value was announced
OrcaFirefoxyes
  • Result: (pass)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: the character is announced
  • Result: (pass)
    • command: Enter (select an option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: focus was returned to the input and the input was re-announced with the new value "function"
TalkBackChromeyes
  • Result: (pass)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: (the entered character was announced)
  • Result: (pass)
    • command: Double tap (select an option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function, in list, showing autofill popup, 6 items"
Notes: value was announced and focus was returned to the text input.
Voice Access (Android)Chromenot applicable-
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinot applicable-
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: (the entered character was announced)
  • Result: (pass)
    • command: Double tap (select an option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function, prediction"
Notes: The activated suggestion was announced, and focus was moved to a new suggestion
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • command: <enter text> (enter text)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: target
      • virtual cursor location: target
    • location after command: target
    • Output: (the entered character was announced)
  • Result: (pass)
    • command: Enter (select an option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function"
Notes: Focus was returned to the text input
Windows Speech RecognitionChromenot applicable-

Extended Support for: input[type="text"] element: convey changes in value

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEnot applicable-
Dragon Naturally SpeakingFirefoxnot applicable-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxnot applicable-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromenot applicable-
Voice Control (MacOS)Firefoxnot applicable-
Windows Speech Recognition 1903Edge 44not applicable-
Back to top

Expectation for the input[type="text"] element: provide shortcuts to jump to this role

Rationale: Screen reader users might want to quickly navigate to elements of this type.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: SHOULD
  • Voice Control: NA

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

This expectation is from the input[type="text"] element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenot applicable-
JAWSChromeyes
  • Result: (pass)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: Shown in list of form controls as "function type edit combo"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type Edit combo"
JAWSIEyes
  • Result: (pass)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: Shown in list of form controls with name and "edit" role
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type Edit, type in text"
JAWSFirefoxyes
  • Result: (pass)
    • command: Insert + F3 (Open element list)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: Shown in list of elements with name and "edit" role
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Edit, has popup"
NarratorEdgeyes
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo edit, press space to edit"
NVDAChromeyes
  • Result: (pass)
    • command: NVDA + F7 (Open Elements List)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: Shown in list of form controls with name and "combobox; edit has auto complete editable"
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type Combo box, has auto complete, editable."
NVDAFirefoxyes
  • Result: (pass)
    • command: NVDA + F7 (Open Elements List)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: "Function type Edit; subMenu has auto complete."
  • Result: (pass)
    • command: f (Next form field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type Edit subMenu, has auto complete. function."
OrcaFirefoxyes
  • Result: (pass)
    • command: e (Next edit field)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function type, entry"
  • Result: (pass)
    • command: alt + shift + e (Open list of edit fields)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: in list of text fields
TalkBackChromeyes
  • Result: (pass)
    • command: Swipe right (next control (correct item type must be selected))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "edit box, function type, double-tap to enter text"
Voice Access (Android)Chromenot applicable-
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinot applicable-
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • command: Swipe down (Next item (as set by the rotor))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, text field, list box popup, double tap to edit."
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • command: VO + U (Open Rotor)
    • before the command was executed
      • mode: auto (mode not explicitly)
    • Output: Shown in list of form controls with name and "list box popup edit text" role
  • Result: (pass)
    • command: VO + Command + J (Next Form Control)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, list box popup, edit text"
Windows Speech RecognitionChromenot applicable-

Extended Support for: input[type="text"] element: provide shortcuts to jump to this role

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEnot applicable-
Dragon Naturally SpeakingFirefoxnot applicable-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxnot applicable-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromenot applicable-
Voice Control (MacOS)Firefoxnot applicable-
Windows Speech Recognition 1903Edge 44not applicable-
Back to top

Expectation for the list attribute: convey the presence of the list attribute - applied to the input[type="text"] element

This expectation is applied to the input[type="text"] element. Expectations and results might differ when the the feature is applied to different roles.

Rationale: The user needs to know that the input will provide suggestions.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: NA

Examples of assistive technologies support this expectation:

  • might announce that suggestions are available when the input receives focus.
  • might announce that the input has auto complete functionality.
  • might modify the role of the associated input to convey datalist functionality, such as changing "edit text" to "Combo box".

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

This expectation is from the list attribute feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenot applicable-
JAWSChromeyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Edit combo"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, edit combo, to set the value use the arrow keys or type the value."
Notes: The role is not consistently conveyed across browsers, and is often presented with a modifier ("combo" or "has popup") to convey the presence of the datalist.
JAWSIEnone
  • Result: (fail)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "edit, function type, edit, type in text"
  • Result: (fail)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Edit, type in text"
Notes: When paired with IE, JAWS does not alter the role to convey the datalist functionality.
JAWSFirefoxyes
  • Result: (pass)
    • command: Down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function type, edit, has popup, function, type in text"
    • Result Notes: conveyed by 'has popup'
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Edit has popup, type in text"
Notes: The role is not consistently conveyed across browsers, and is often presented with a modifier ("combo" or "has popup") to convey the presence of the datalist.
NarratorEdgeyes
  • Result: (pass)
    • command: Down arrow (Read next item (scan mode))
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo edit, scan off."
    • Result Notes: conveyed by 'combo edit' role
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo edit, scan off, suggestions available."
    • Result Notes: conveyed by 'combo edit' role
NVDAChromeyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo box, has auto complete, editable."
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Combo box, has auto complete, editable. Blank."
Notes: The role is not consistently conveyed across browsers, and is often presented with a modifier ("combo box" or "subMenu") to convey the presence of the datalist.
NVDAFirefoxyes
  • Result: (pass)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "clickable, Function type, Edit subMenu, has auto complete, function"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, Edit has auto complete. selected function."
Notes: The role is not consistently conveyed across browsers, and is often presented with a modifier ("combo box" or "subMenu") to convey the presence of the datalist.
OrcaFirefoxnone
  • Result: (fail)
    • command: down arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function type, entry"
  • Result: (fail)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function type, entry, focus mode"
TalkBackChromeyes
  • Result: (pass)
    • command: Swipe right (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "edit box, function type, double-tap to edit text, edit options available"
    • Result Notes: after double tapping on the input, 'showing autofill popup' is announced.
Voice Access (Android)Chromenot applicable-
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinot applicable-
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • command: Swipe Right (Next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, text field, list box popup, double tap to edit."
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • command: VO + Right arrow (Read next item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, list box popup, edit text"
  • Result: (pass)
    • command: Tab (Read next focusable item)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Function type, list box popup, edit text"
Windows Speech RecognitionChromenot applicable-

Extended Support for: list attribute: convey the presence of the list attribute

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEnot applicable-
Dragon Naturally SpeakingFirefoxnot applicable-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxnot applicable-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromenot applicable-
Voice Control (MacOS)Firefoxnot applicable-
Windows Speech Recognition 1903Edge 44not applicable-
Back to top

Expectation for the option element: convey its name

Rationale: A screen reader user needs to know what to enter.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: MUST

Examples of assistive technologies support this expectation:

  • A screen reader will announce the name of the option (if present) in addition to the value.
  • Voice control software will let the user say something like "choose <name>" after saying something like "show choices" to pick the option.

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

Notes: For form inputs - commands to read line by line (down and up arrows in most windows screen readers) will not always result in the name being explicitly conveyed when the virtual focus is moved to an input where the label is visually displayed and programmatically associated with the input. This is acceptable because the name is implied by the fact that it should be naturally found in the reading order. Some screen readers choose to not convey the name in these cases, likely in an effort to reduce verbosity.

This expectation is from the option element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenone
  • Result: (fail)
    • command: "Choose <option text>" (Choose drop down option)
    • Output: text of command was entered into the text input
JAWSChromeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: Name, posinset, and value are announced when provided.
JAWSIEnone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Blank", skipped the suggestions and started reading the content after the input.
JAWSFirefoxyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "async function, 1 of 3"
NarratorEdgeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function, 1 of 6, selected"
NVDAChromeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: Name, value, and posinset are announced when provided.
NVDAFirefoxyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: function 1 of 6
OrcaFirefoxyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "generator function"
TalkBackChromeyes
  • Result: (pass)
    • command: Swipe right (Select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: function* generator function, double tap to activate, double tap and hold to long press
Voice Access (Android)Chromeyes
  • Result: (pass)
    • command: "Tap <text>" or just "<text>" (Activate item by name)
    • Output: option was flagged for disambiguation
    • Command Notes: said "tap function"
Voice Control (iOS)Safarinone
  • Result: (fail)
    • command: "Tap <text>" (Activate item by name)
    • Output: names were not listed for options
    • Command Notes: said "show names". This was done after entering the word "function" into the input so that suggestions were displayed.
Voice Control (MacOS)Safarinone
  • Result: (fail)
    • command: "Click <text>" (Activate item by name)
    • Output: option was not activated
    • Command Notes: said "click function"
VoiceOver (iOS)Safarinone
  • Result: (fail)
    • command: Explore the keyboard by single press + move (explore), then release on a key (touch type with virtual keyboard)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function*"
Notes: Only the option value is listed as predictions, not the name.
VoiceOver (macOS)Safarinone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: nothing was conveyed at all
Windows Speech RecognitionChromenone
  • Result: (fail)
    • command: "Click <text>" (Activate item by name)
    • Output: role was not activated
    • Command Notes: said "click function"

Extended Support for: option element: convey its name

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEunknown-
Dragon Naturally SpeakingFirefoxunknown-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxunknown-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromeunknown-
Voice Control (MacOS)Firefoxunknown-
Windows Speech Recognition 1903Edge 44yes
  • Result: (pass)
    • command: "Click <text>" (Activate item by name)
    • Output: role was activated
    • Command Notes: said "click function"
Back to top

Expectation for the option element: convey its role

Rationale: A screen reader user needs to know how they can interact with the element. Voice control software might use the role to help users activate controls that do not have a visible name.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: MUST

Examples of assistive technologies support this expectation:

  • A screen reader might announce "option" as the role.
  • A screen reader might not announce a role because the role is implied by the role of a select element, combo box, or listbox.
  • A screen reader might not announce a role because the role is implied by the announcement of auto complete or suggestions.
  • Voice control software will let the user say something like "move down <n>" or "move up <n>" to select an option.

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

This expectation is from the option element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenone
  • Result: (fail)
    • command: Click <role> (Click Type)
    • Output: text of command was entered into the text input
JAWSChromeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: Name, posinset, and value are announced when provided.
Notes: The menu context might imply a menuitem role instead of an option role
JAWSIEnone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Blank", skipped the suggestions and started reading the content after the input.
JAWSFirefoxyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "async function, 1 of 3"
NarratorEdgeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function, 1 of 6, selected"
NVDAChromeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: Name, value, and posinset are announced when provided.
NVDAFirefoxyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: function 1 of 6
    • Result Notes: implied by list context
OrcaFirefoxpartial
  • Result: (partial)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "generator function"
    • Result Notes: the menu role might imply a menuitem role instead of an option role
TalkBackChromeyes
  • Result: (pass)
    • command: Swipe right (Select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: function* generator function, double tap to activate, double tap and hold to long press
Notes: option role was implied by the announcement of "autofill menu" and "in list" when entering the list of options
Voice Access (Android)Chromeyes
  • Result: (pass)
    • command: "Show numbers" (Turn on the numbers overlay)
    • Output: options were flagged with a number
    • Command Notes: said "show numbers"
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinone
  • Result: (fail)
    • command: "Show numbers" (Turn on the numbers overlay)
    • Output: role was not flagged with a number
    • Command Notes: said "show numbers"
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • command: Explore the keyboard by single press + move (explore), then release on a key (touch type with virtual keyboard)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function*"
VoiceOver (macOS)Safarinone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: nothing was conveyed at all
Windows Speech RecognitionChromenone
  • Result: (fail)
    • command: "Show numbers" (Turn on the numbers overlay)
    • Output: role was not flagged with a number
    • Command Notes: said "show numbers"

Extended Support for: option element: convey its role

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEunknown-
Dragon Naturally SpeakingFirefoxunknown-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxunknown-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromeunknown-
Voice Control (MacOS)Firefoxunknown-
Windows Speech Recognition 1903Edge 44yes
  • Result: (pass)
    • command: "Show numbers" (Turn on the numbers overlay)
    • Output: role was flagged with a number
    • Command Notes: said "show numbers"
Back to top

Expectation for the option element: convey the value of the option when used in a datalist context

Rationale: When in a datalist context, both the name and value are displayed, so the user needs to be aware of both.

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: MUST

Examples of assistive technologies support this expectation:

  • A screen reader will announce the value of the option in addition to the name.
  • Voice control software will let the user say something like "choose <value>" to pick an option.

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

This expectation is from the option element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenone
  • Result: (fail)
    • command: "Choose <option text>" (Choose drop down option)
    • Output: text of command was entered into the text input
JAWSChromeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: Name, posinset, and value are announced when provided.
JAWSIEnone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Blank", skipped the suggestions and started reading the content after the input.
JAWSFirefoxyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "async function, 1 of 3"
NarratorEdgenone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "async generator function"
Notes: Only the name is displayed by Edge and announced by Narrator if both the name and value are set.
NVDAChromeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: Name, value, and posinset are announced when provided.
NVDAFirefoxnone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: function 1 of 6
    • Result Notes: only name was conveyed
OrcaFirefoxnone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "generator function"
TalkBackChromeyes
  • Result: (pass)
    • command: Swipe right (Select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: function* generator function, double tap to activate, double tap and hold to long press
Voice Access (Android)Chromeyes
  • Result: (pass)
    • command: "Tap <text>" or just "<text>" (Activate item by name)
    • Output: options were flagged for disambiguation
    • Command Notes: said "tap target arrow"
Voice Control (iOS)Safarinone
  • Result: (fail)
    • command: "Tap <text>" (Activate item by name)
    • Output: names were not listed for options
    • Command Notes: said "show names". This was done after entering the word "function" into the input so that suggestions were displayed.
Voice Control (MacOS)Safarinone
  • Result: (fail)
    • command: "Click <text>" (Activate item by name)
    • Output: option was not activated
    • Command Notes: said "click function"
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • command: Explore the keyboard by single press + move (explore), then release on a key (touch type with virtual keyboard)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function*"
VoiceOver (macOS)Safarinone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: nothing was conveyed at all
Windows Speech RecognitionChromenone
  • Result: (fail)
    • command: "Click <text>" (Activate item by name)
    • Output: role was not activated
    • Command Notes: said "click function"

Extended Support for: option element: convey the value of the option when used in a datalist context

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEnot applicable-
Dragon Naturally SpeakingFirefoxnot applicable-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxnot applicable-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromenot applicable-
Voice Control (MacOS)Firefoxnot applicable-
Windows Speech Recognition 1903Edge 44not applicable
  • Result: (na)
    • command: "Click <text>" (Activate item by name)
    • Output:
    • Result Notes: not displayed
Back to top

Expectation for the option element: convey information about the position the option in the list

Rationale: When user should be able to determine how many options are in the list and where they are in the list

Strength of these expectations for different types of assistive technologies:

  • Screen Readers: MAY
  • Voice Control: NA

Examples of assistive technologies support this expectation:

  • A screen reader might announce "choose <2 of 10>" when navigating through a list of options

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

This expectation is from the option element feature.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenot applicable-
JAWSChromeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: Name, posinset, and value are announced when provided.
JAWSIEnone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "Blank", skipped the suggestions and started reading the content after the input.
JAWSFirefoxyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "async function, 1 of 3"
NarratorEdgeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function, 1 of 6, selected"
NVDAChromeyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: Name, value, and posinset are announced when provided.
Notes: the first item was announced as "row 1", however other items did not convey their position.
NVDAFirefoxyes
  • Result: (pass)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: function 1 of 6
OrcaFirefoxnone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "generator function"
TalkBackChromenone
  • Result: (fail)
    • command: Swipe right (Select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: function* generator function, double tap to activate, double tap and hold to long press
Voice Access (Android)Chromenot applicable-
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinot applicable-
VoiceOver (iOS)Safarinone
  • Result: (fail)
    • command: Explore the keyboard by single press + move (explore), then release on a key (touch type with virtual keyboard)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: "function*"
VoiceOver (macOS)Safarinone
  • Result: (fail)
    • command: Down arrow (select next option)
    • before the command was executed
      • mode: auto (mode not explicitly)
      • keyboard focus location: before target
      • virtual cursor location: before target
    • location after command: target
    • Output: nothing was conveyed at all
Windows Speech RecognitionChromenot applicable-

Extended Support for: option element: convey information about the position the option in the list

These are less common combinations

ATBrowserHas SupportOutput
Dragon Naturally SpeakingIEnot applicable-
Dragon Naturally SpeakingFirefoxnot applicable-
JAWSEdgeunknown-
NarratorFirefoxunknown-
NarratorChromeunknown-
NarratorIEunknown-
NVDAIEunknown-
NVDAEdgeunknown-
TalkBackFirefoxunknown-
Voice Access (Android)Firefoxnot applicable-
VoiceOver (iOS)Chromeunknown-
VoiceOver (macOS)Chromeunknown-
VoiceOver (macOS)Firefoxunknown-
OrcaChromeunknown-
Voice Control (MacOS)Chromenot applicable-
Voice Control (MacOS)Firefoxnot applicable-
Windows Speech Recognition 1903Edge 44not applicable-
Back to top

Dates and Versions of tested combinations

ATAT VersionBrowserBrowser versionOS versionDate tested
Dragon Naturally Speaking15.30Chrome7919092020-02-01
JAWS2020.2001.70Chrome8019092020-02-27
JAWS2020.2001.70IE1119092020-02-27
JAWS2020.2001.70Firefox7319092020-02-27
Narrator1909Edge4419092020-02-27
NVDA2019.3.1Chrome8019092020-02-27
NVDA2019.3.1Firefox7319092020-02-27
Orca3.34.0Firefox73Ubuntu 19.102020-02-27
TalkBack8.1Chrome8072020-02-27
Voice Access (Android)3.1Chrome7972020-02-03
Voice Control (iOS)13.3.1Safari13.3.113.3.12020-02-01
Voice Control (MacOS)10.15.3Safari13.0.510.15.32020-02-27
VoiceOver (iOS)13.3.1Safari13.3.113.3.12020-02-27
VoiceOver (macOS)10.15.3Safari13.0.510.15.32020-02-27
Windows Speech Recognition1903Chrome7919092020-02-01

History

  • 2019-07-20 Test created
  • 2019-07-24 Add assertion for position in set information for the option element
  • 2019-07-26 Talkback results added. Thank you @dennisl
  • 2019-09-15 Add orca results
  • 2019-09-23 Added vc_ios results
  • 2019-10-02 Add va_and results
  • 2019-10-07 Add vc_macos results
  • 2019-10-18 Add wsr results
  • 2020-02-01 update results for all core combinations of screen readers and voice control software except for those on android.
  • 2020-02-03 update android results for Talkback and Voice Access.
  • 2020-02-03 update android results for core desktop screen readers.