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

Test: Basic html checkbox test

Screen Reader support level: partial (39/40)

Voice Control support level: partial (8/9)

On this page

About this test

A basic html checkbox test.

Run this test and and submit your results

Age of results

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

Caution

Failing or partial results may be out of date. The oldest result is from 10 months ago. Consider running this test and contributing results.

Test HTML

open the test page

HTML source is too long to display here.

Summary of Screen Reader support by expectation

* means that some support is hidden behind settings

Summary of Voice Control support by expectation

input[type="checkbox"] element
ExpectationDragon Naturally SpeakingVoice Access (Android)Voice Control (iOS)Voice Control (MacOS)Windows Speech Recognition
ChromeChromeSafariSafariChrome
MUST convey its namesupportedsupportedsupportednonesupported
MUST convey its rolesupportedsupportednot applicablesupportedsupported

* means that some support is hidden behind settings

Detailed support results by expectation

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

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

Rationale:

A screen reader user needs to know what to enter.

Strength of this expectation for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: MUST

Examples:

  • 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.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromeyes
  • Result: (pass)
    • Test Case: Use "Click <text>" (Activate item by name)
      1. Launch Dragon Naturally Speaking and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Issue the command: "Click <text>" (Activate item by name)
      5. Record results for the relevant expectations
    • Output: checkbox was checked
    • Command Notes: said "click yes"
JAWSChromeyes
  • Result: (pass)
    • Test Case: Use Down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "Do you approve?, yes, checkbox, not checked."
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Insert + F3 (Open element list)
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Insert + F3 (Open element list)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "Do you approve, yes checkbox not checked"
JAWSIEpartial
  • Result: (pass)
    • Test Case: Use Down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (fail)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? checkbox, not checked"
    • Result Notes: group name was conveyed but the not the input name
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? yes, checkbox, not checked"
  • Result: (fail)
    • Test Case: Use Insert + F3 (Open element list)
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Insert + F3 (Open element list)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "do you approve? checkbox not checked"
    • Result Notes: name was not conveyed, but the group name was
JAWSFirefoxyes
  • Result: (pass)
    • Test Case: Use Down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? yes, yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Insert + F3 (Open element list)
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Insert + F3 (Open element list)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "do you approve? yes check box not checked"
NarratorEdgeyes
  • Result: (pass)
    • Test Case: Use Down arrow (Read next item (scan mode)) to navigate forward to `input[type="checkbox"]`
      1. Launch Narrator and Edge.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Down arrow (Read next item (scan mode))
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, unchecked"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch Narrator and Edge.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, unchecked"
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch Narrator and Edge.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, unchecked"
NVDAChromeyes
  • Result: (pass)
    • Test Case: Use down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? checkbox, not checked, yes, checkbox, not checked, no, checkbox, not checked, maybe"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox not checked"
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use NVDA + F7 (Open Elements List)
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: NVDA + F7 (Open Elements List)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "unlabeled; check box; not checked; Yes"
NVDAFirefoxyes
  • Result: (pass)
    • Test Case: Use down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "clickable, yes, checkbox, not checked, clickable, no, checkbox, not checked, clickable, maybe, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "clickable, yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "clickable, yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use NVDA + F7 (Open Elements List)
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: NVDA + F7 (Open Elements List)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "yes; check box; not checked"
OrcaFirefoxyes
  • Result: (pass)
    • Test Case: Use down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch Orca and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked, no, checkbox, not checked, maybe, checkbox, not checked."
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch Orca and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "Do you approve? Panel, yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Tab (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch Orca and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
TalkBackChromeyes
  • Result: (pass)
    • Test Case: Use Swipe right (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch TalkBack and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Swipe right (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "not checked, yes, checkbox"
  • Result: (pass)
    • Test Case: Use Swipe right (next control (correct item type must be selected)) to navigate forward to `input[type="checkbox"]`
      1. Launch TalkBack and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Swipe right (next control (correct item type must be selected))
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "not checked, yes, checkbox"
Voice Access (Android)Chromeyes
  • Result: (pass)
    • Test Case: Use "Tap <text>" or just "<text>" (Activate item by name)
      1. Launch Voice Access (Android) and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Issue the command: "Tap <text>" or just "<text>" (Activate item by name)
      5. Record results for the relevant expectations
    • Output: checkbox was checked
    • Command Notes: said "tap yes"
Voice Control (iOS)Safariyes
  • Result: (pass)
    • Test Case: Use "Tap <text>" (Activate item by name)
      1. Launch Voice Control (iOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Issue the command: "Tap <text>" (Activate item by name)
      5. Record results for the relevant expectations
    • Output: checkbox was activated
    • Command Notes: said "tap yes"
Voice Control (MacOS)Safarinone
  • Result: (fail)
    • Test Case: Use "Click <text>" (Activate item by name)
      1. Launch Voice Control (MacOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Issue the command: "Click <text>" (Activate item by name)
      5. Record results for the relevant expectations
    • Output: command was not recognized
    • Command Notes: said "click yes"
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • Test Case: Use Swipe Right (Next item) to navigate forward to `input[type="checkbox"]`
      1. Launch VoiceOver (iOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Swipe Right (Next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, unchecked"
  • Result: (pass)
    • Test Case: Use Swipe down (next form control (correct item type must be selected)) to navigate forward to `input[type="checkbox"]`
      1. Launch VoiceOver (iOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Swipe down (next form control (correct item type must be selected))
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? yes, checkbox, unchecked"
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • Test Case: Use VO + Right arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch VoiceOver (macOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: VO + Right arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, unchecked, checkbox"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch VoiceOver (macOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "Yes, unchecked, checkbox, do you approve?"
Windows Speech RecognitionChromeyes
  • Result: (pass)
    • Test Case: Use "Click <text>" (Activate item by name)
      1. Launch Windows Speech Recognition and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Issue the command: "Click <text>" (Activate item by name)
      5. Record results for the relevant expectations
    • Output: input was activated
    • Command Notes: said "click yes"

Extended Support for: input[type="checkbox"] 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 RecognitionEdgeunknown-
Back to top

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

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

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 this expectation for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: MUST

Examples:

  • Screen readers might announce the role as "check box"
  • Voice control software will let the user say something like "click check box" or flag the role with a number.

Grading method:

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

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromeyes
  • Result: (pass)
    • Test Case: Use Click <role> (Click Type)
      1. Launch Dragon Naturally Speaking and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Issue the command: Click <role> (Click Type)
      5. Record results for the relevant expectations
    • Output: all checkboxes were flagged for disambiguation
    • Command Notes: said "click checkbox"
JAWSChromeyes
  • Result: (pass)
    • Test Case: Use Down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "Do you approve?, yes, checkbox, not checked."
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Insert + F3 (Open element list)
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Insert + F3 (Open element list)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "Do you approve, yes checkbox not checked"
JAWSIEyes
  • Result: (pass)
    • Test Case: Use Down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? checkbox, not checked"
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Insert + F3 (Open element list)
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Insert + F3 (Open element list)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "do you approve? checkbox not checked"
JAWSFirefoxyes
  • Result: (pass)
    • Test Case: Use Down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? yes, yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Insert + F3 (Open element list)
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Insert + F3 (Open element list)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "do you approve? yes check box not checked"
NarratorEdgeyes
  • Result: (pass)
    • Test Case: Use Down arrow (Read next item (scan mode)) to navigate forward to `input[type="checkbox"]`
      1. Launch Narrator and Edge.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Down arrow (Read next item (scan mode))
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, unchecked"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch Narrator and Edge.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, unchecked"
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch Narrator and Edge.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, unchecked"
NVDAChromeyes
  • Result: (pass)
    • Test Case: Use down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? checkbox, not checked, yes, checkbox, not checked, no, checkbox, not checked, maybe"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox not checked"
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use NVDA + F7 (Open Elements List)
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: NVDA + F7 (Open Elements List)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "unlabeled; check box; not checked; Yes"
NVDAFirefoxyes
  • Result: (pass)
    • Test Case: Use down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "clickable, yes, checkbox, not checked, clickable, no, checkbox, not checked, clickable, maybe, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "clickable, yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "clickable, yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use NVDA + F7 (Open Elements List)
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: NVDA + F7 (Open Elements List)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "yes; check box; not checked"
OrcaFirefoxyes
  • Result: (pass)
    • Test Case: Use down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch Orca and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked, no, checkbox, not checked, maybe, checkbox, not checked."
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch Orca and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "Do you approve? Panel, yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Tab (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch Orca and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
TalkBackChromeyes
  • Result: (pass)
    • Test Case: Use Swipe right (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch TalkBack and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Swipe right (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "not checked, yes, checkbox"
  • Result: (pass)
    • Test Case: Use Swipe right (next control (correct item type must be selected)) to navigate forward to `input[type="checkbox"]`
      1. Launch TalkBack and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Swipe right (next control (correct item type must be selected))
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "not checked, yes, checkbox"
Voice Access (Android)Chromeyes
  • Result: (pass)
    • Test Case: Use "Show numbers" (Turn on the numbers overlay)
      1. Launch Voice Access (Android) and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Issue the command: "Show numbers" (Turn on the numbers overlay)
      5. Record results for the relevant expectations
    • Output: input was flagged with a number
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safariyes
  • Result: (pass)
    • Test Case: Use "Show numbers" (Turn on the numbers overlay)
      1. Launch Voice Control (MacOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Issue the command: "Show numbers" (Turn on the numbers overlay)
      5. Record results for the relevant expectations
    • Output: input was highlighted with a number
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • Test Case: Use Swipe Right (Next item) to navigate forward to `input[type="checkbox"]`
      1. Launch VoiceOver (iOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Swipe Right (Next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, unchecked"
  • Result: (pass)
    • Test Case: Use Swipe down (next form control (correct item type must be selected)) to navigate forward to `input[type="checkbox"]`
      1. Launch VoiceOver (iOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Swipe down (next form control (correct item type must be selected))
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? yes, checkbox, unchecked"
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • Test Case: Use VO + Right arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch VoiceOver (macOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: VO + Right arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, unchecked, checkbox"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch VoiceOver (macOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "Yes, unchecked, checkbox, do you approve?"
Windows Speech RecognitionChromeyes
  • Result: (pass)
    • Test Case: Use "Show numbers" (Turn on the numbers overlay)
      1. Launch Windows Speech Recognition and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Issue the command: "Show numbers" (Turn on the numbers overlay)
      5. Record results for the relevant expectations
    • Output: input was flagged with a number

Extended Support for: input[type="checkbox"] 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 RecognitionEdgeunknown-
Back to top

Expectation for the input[type="checkbox"] element: convey changes in the checked state

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

Rationale:

The user needs to know that the state was successfully changed.

Strength of this expectation for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: NA

Examples:

  • When the user checks or unchecks the check box, the screen reader will announce the new state.

Grading method:

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

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenot applicable-
JAWSChromeyes
  • Result: (pass)
    • Test Case: Use Space (Activate Form Control) on the target of `input[type="checkbox"]`
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: target
        • Keyboard focus is: target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Space (Activate Form Control)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "space, checked"
JAWSIEyes
  • Result: (pass)
    • Test Case: Use Space (Activate Form Control) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Space (Activate Form Control)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "space, checked"
JAWSFirefoxyes
  • Result: (pass)
    • Test Case: Use Space (Activate Form Control) on the target of `input[type="checkbox"]`
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: target
        • Keyboard focus is: target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Space (Activate Form Control)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "space, checked"
NarratorEdgeyes
  • Result: (pass)
    • Test Case: Use Space (Activate Form Control) on the target of `input[type="checkbox"]`
      1. Launch Narrator and Edge.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: target
        • Keyboard focus is: target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Space (Activate Form Control)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "checked"
NVDAChromeyes
  • Result: (pass)
    • Test Case: Use Space (Activate Form Control) on the target of `input[type="checkbox"]`
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: target
        • Keyboard focus is: target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Space (Activate Form Control)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "checked"
NVDAFirefoxyes
  • Result: (pass)
    • Test Case: Use Space (Activate Form Control) on the target of `input[type="checkbox"]`
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: target
        • Keyboard focus is: target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Space (Activate Form Control)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "checked"
OrcaFirefoxyes
  • Result: (pass)
    • Test Case: Use Space (Activate Form Control) on the target of `input[type="checkbox"]`
      1. Launch Orca and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: target
        • Keyboard focus is: target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Space (Activate Form Control)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "space, checked"
TalkBackChromeyes
  • Result: (pass)
    • Test Case: Use double tap (Activate form control) on the target of `input[type="checkbox"]`
      1. Launch TalkBack and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: target
        • Keyboard focus is: target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: double tap (Activate form control)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "checked"
Voice Access (Android)Chromenot applicable-
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinot applicable-
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • Test Case: Use Double tap (Activate Form Control) on the target of `input[type="checkbox"]`
      1. Launch VoiceOver (iOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: target
        • Keyboard focus is: target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Double tap (Activate Form Control)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "checked"
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • Test Case: Use Space (Activate Form Control) on the target of `input[type="checkbox"]`
      1. Launch VoiceOver (macOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: target
        • Keyboard focus is: target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Space (Activate Form Control)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "check, yes, checkbox"
Windows Speech RecognitionChromenot applicable-

Extended Support for: input[type="checkbox"] element: convey changes in the checked state

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 RecognitionEdgenot applicable-
Back to top

Expectation for the input[type="checkbox"] element: convey the current checked state

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

Rationale:

A screen reader user needs to know the current checked state of the input.

Strength of this expectation for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: NA

Examples:

  • A screen reader may convey the checked state as something like "checked", "unchecked", or "not checked"

Grading method:

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

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenot applicable-
JAWSChromeyes
  • Result: (pass)
    • Test Case: Use Down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "Do you approve?, yes, checkbox, not checked."
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Insert + F3 (Open element list)
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Insert + F3 (Open element list)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "Do you approve, yes checkbox not checked"
JAWSIEyes
  • Result: (pass)
    • Test Case: Use Down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? checkbox, not checked"
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Insert + F3 (Open element list)
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Insert + F3 (Open element list)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "do you approve? checkbox not checked"
JAWSFirefoxyes
  • Result: (pass)
    • Test Case: Use Down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? yes, yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Insert + F3 (Open element list)
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Insert + F3 (Open element list)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "do you approve? yes check box not checked"
NarratorEdgeyes
  • Result: (pass)
    • Test Case: Use Down arrow (Read next item (scan mode)) to navigate forward to `input[type="checkbox"]`
      1. Launch Narrator and Edge.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Down arrow (Read next item (scan mode))
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, unchecked"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch Narrator and Edge.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, unchecked"
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch Narrator and Edge.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, unchecked"
NVDAChromeyes
  • Result: (pass)
    • Test Case: Use down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? checkbox, not checked, yes, checkbox, not checked, no, checkbox, not checked, maybe"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox not checked"
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use NVDA + F7 (Open Elements List)
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: NVDA + F7 (Open Elements List)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "unlabeled; check box; not checked; Yes"
NVDAFirefoxyes
  • Result: (pass)
    • Test Case: Use down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "clickable, yes, checkbox, not checked, clickable, no, checkbox, not checked, clickable, maybe, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "clickable, yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "clickable, yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use NVDA + F7 (Open Elements List)
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: NVDA + F7 (Open Elements List)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "yes; check box; not checked"
OrcaFirefoxyes
  • Result: (pass)
    • Test Case: Use down arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch Orca and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: down arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked, no, checkbox, not checked, maybe, checkbox, not checked."
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch Orca and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "Do you approve? Panel, yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Tab (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch Orca and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
TalkBackChromeyes
  • Result: (pass)
    • Test Case: Use Swipe right (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch TalkBack and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Swipe right (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "not checked, yes, checkbox"
  • Result: (pass)
    • Test Case: Use Swipe right (next control (correct item type must be selected)) to navigate forward to `input[type="checkbox"]`
      1. Launch TalkBack and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Swipe right (next control (correct item type must be selected))
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "not checked, yes, checkbox"
Voice Access (Android)Chromenot applicable-
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinot applicable-
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • Test Case: Use Swipe Right (Next item) to navigate forward to `input[type="checkbox"]`
      1. Launch VoiceOver (iOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Swipe Right (Next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, unchecked"
  • Result: (pass)
    • Test Case: Use Swipe down (next form control (correct item type must be selected)) to navigate forward to `input[type="checkbox"]`
      1. Launch VoiceOver (iOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Swipe down (next form control (correct item type must be selected))
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? yes, checkbox, unchecked"
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • Test Case: Use VO + Right arrow (Read next item) to navigate forward to `input[type="checkbox"]`
      1. Launch VoiceOver (macOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: VO + Right arrow (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, unchecked, checkbox"
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `input[type="checkbox"]`
      1. Launch VoiceOver (macOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Read next focusable item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "Yes, unchecked, checkbox, do you approve?"
Windows Speech RecognitionChromenot applicable-

Extended Support for: input[type="checkbox"] element: convey the current checked state

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 RecognitionEdgenot applicable-
Back to top

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

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

Rationale:

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

Strength of this expectation 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.

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenot applicable-
JAWSChromeyes
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Insert + F3 (Open element list)
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Insert + F3 (Open element list)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "Do you approve, yes checkbox not checked"
JAWSIEyes
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Insert + F3 (Open element list)
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Insert + F3 (Open element list)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "do you approve? checkbox not checked"
JAWSFirefoxyes
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use Insert + F3 (Open element list)
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Insert + F3 (Open element list)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "do you approve? yes check box not checked"
NarratorEdgeyes
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch Narrator and Edge.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, unchecked"
NVDAChromeyes
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use NVDA + F7 (Open Elements List)
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: NVDA + F7 (Open Elements List)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "unlabeled; check box; not checked; Yes"
NVDAFirefoxyes
  • Result: (pass)
    • Test Case: Use f (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: f (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "clickable, yes, checkbox, not checked"
  • Result: (pass)
    • Test Case: Use NVDA + F7 (Open Elements List)
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: NVDA + F7 (Open Elements List)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "yes; check box; not checked"
OrcaFirefoxyes
  • Result: (pass)
    • Test Case: Use Tab (Next form field) to navigate forward to `input[type="checkbox"]`
      1. Launch Orca and Firefox.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Tab (Next form field)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, checkbox, not checked"
TalkBackChromeyes
  • Result: (pass)
    • Test Case: Use Swipe right (next control (correct item type must be selected)) to navigate forward to `input[type="checkbox"]`
      1. Launch TalkBack and Chrome.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Swipe right (next control (correct item type must be selected))
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "not checked, yes, checkbox"
Voice Access (Android)Chromenot applicable-
Voice Control (iOS)Safarinot applicable-
Voice Control (MacOS)Safarinot applicable-
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • Test Case: Use Swipe down (next form control (correct item type must be selected)) to navigate forward to `input[type="checkbox"]`
      1. Launch VoiceOver (iOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: Swipe down (next form control (correct item type must be selected))
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "do you approve? yes, checkbox, unchecked"
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • Test Case: Use VO + Command + J (Next Form Control) to navigate forward to `input[type="checkbox"]`
      1. Launch VoiceOver (macOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Virtual focus is: before target
        • Keyboard focus is: before target
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: VO + Command + J (Next Form Control)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "yes, unchecked, checkbox"
  • Result: (pass)
    • Test Case: Use VO + U (Open Rotor)
      1. Launch VoiceOver (macOS) and Safari.
      2. Navigate to the test page.
      3. Identify all elements that match this selector:input[type="checkbox"]
        • If multiple elements match the target, repeat this test for all instances. However, choose a single instance to report against. If you feel that the selector should be more specific, please open a GitHub Issue.
      4. Position and configure the screen reader so that the following conditions are met
        • Mode is: auto (do not explicitly change the mode)
      5. Issue the command: VO + U (Open Rotor)
        • After issuing the command, virtual focus should be: na
      6. Record results for the relevant expectations
    • Output: "Yes, unchecked, checkbox"
Windows Speech RecognitionChromenot applicable-

Extended Support for: input[type="checkbox"] 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 RecognitionEdgenot applicable-
Back to top

Dates and Versions of tested combinations

ATAT VersionBrowserBrowser versionOS versionDate tested
Dragon Naturally Speaking15.30Chrome7819032019-12-06
JAWS2020.1910.54Chrome7819032019-12-06
JAWS2020.1910.54IE1119032019-12-06
JAWS2020.1910.54Firefox7019032019-12-06
Narrator1903Edge4419032019-12-06
NVDA2019.2.1Chrome7819032019-12-06
NVDA2019.2.1Firefox7019032019-12-06
Orca3.31.4Firefox70Ubuntu 19.042019-12-06
TalkBack8.1Chrome78102019-12-06
Voice Access (Android)3.1Chrome78102019-12-06
Voice Control (iOS)13.2.3Safari13.2.313.2.32019-12-06
Voice Control (MacOS)10.15Safari13.0.310.152019-12-06
VoiceOver (iOS)13.2.3Safari13.2.313.2.32019-12-06
VoiceOver (macOS)10.15Safari13.0.310.152019-12-06
Windows Speech Recognition1903Chrome7819032019-12-06

History

  • 2019-12-06 Added test