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

Test: CSS generated content for link name

Screen Reader support level: partial (8/10)

Voice Control support level: partial (3/5)

On this page

About this test

This test uses CSS generated content for a link name.

Run this test and submit your results

Age of results

Results in this test range from a year ago to a year 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 a year ago. Consider running this test and contributing results.

Test HTML

open the test page
<!DOCTYPE html>
<html lang="en">
<head>
    <title>CSS generated content for link name test</title>

    <style>
        #target::before {
            content: "Oder now";
        }
    </style>
</head>
<body>

<h1>CSS generated content for link text test</h1>

<p>The target button should have an accessible name of "Order now"</p>

<button>Tab stop before</button>

<a href="https://www.google.com" id="target" onclick="alert('clicked'); return false;"></a>

<button>Tab stop after</button>

</body>
</html>

Summary of Screen Reader support by expectation

CSS generated content
ExpectationJAWSNarratorNVDAOrcaTalkBackVoiceOver (iOS)VoiceOver (macOS)
ChromeIEFirefoxEdgeChromeFirefoxFirefoxChromeSafariSafari
MUST be included as part of the accessible name applied to: hyperlink elementsupportednonesupportednonesupportedsupportedsupportedsupportedsupportedsupported

* means that some support is hidden behind settings

Summary of Voice Control support by expectation

CSS generated content
ExpectationDragon Naturally SpeakingVoice Access (Android)Voice Control (iOS)Voice Control (MacOS)Windows Speech Recognition
ChromeChromeSafariSafariChrome
MUST be included as part of the accessible name applied to: hyperlink elementnonesupportedsupportedsupportednone

* means that some support is hidden behind settings

Detailed support results by expectation

Expectation for the CSS generated content: be included as part of the accessible name - applied to the hyperlink element

This expectation is applied to the hyperlink element. Expectations and results might differ when the the feature is applied to different roles.

This expectation is from the CSS generated content feature.

Strength of this expectation for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: MUST

Grading method:

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

ATBrowserHas SupportOutput
Dragon Naturally SpeakingChromenone
  • Result: (fail)
    • Test Case: Use "Click <text>" (Activate item by name)
      1. Launch Dragon Naturally Speaking and Chrome.
      2. Navigate to the test page.
      3. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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 order now"
JAWSChromeyes
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `#target`
      1. Launch JAWS and Chrome.
      2. Navigate to the test page.
      3. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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: "order now, link"
JAWSIEnone
  • Result: (fail)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `#target`
      1. Launch JAWS and IE.
      2. Navigate to the test page.
      3. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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: "www.google.com link"
    • Result Notes: fail because link text was displayed but not announced by the screen reader
JAWSFirefoxyes
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `#target`
      1. Launch JAWS and Firefox.
      2. Navigate to the test page.
      3. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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: "order now, link"
NarratorEdgenone
  • Result: (fail)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `#target`
      1. Launch Narrator and Edge.
      2. Navigate to the test page.
      3. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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: "link"
NVDAChromeyes
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `#target`
      1. Launch NVDA and Chrome.
      2. Navigate to the test page.
      3. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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: "order now link"
NVDAFirefoxyes
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `#target`
      1. Launch NVDA and Firefox.
      2. Navigate to the test page.
      3. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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: "order now, link"
OrcaFirefoxyes
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `#target`
      1. Launch Orca and Firefox.
      2. Navigate to the test page.
      3. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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: "order now, link"
TalkBackChromeyes
  • Result: (pass)
    • Test Case: Use Swipe right (or alt+right arrow) (Read next item) to navigate forward to `#target`
      1. Launch TalkBack and Chrome.
      2. Navigate to the test page.
      3. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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 (or alt+right arrow) (Read next item)
        • After issuing the command, virtual focus should be: target
      6. Record results for the relevant expectations
    • Output: "order now, link"
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. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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: link was activated
    • Command Notes: said "tap order now".
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. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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: link was activated
    • Command Notes: said "tap order now"
Voice Control (MacOS)Safariyes
  • Result: (pass)
    • Test Case: Use "Click <text>" (Activate item by name)
      1. Launch Voice Control (MacOS) and Safari.
      2. Navigate to the test page.
      3. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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: link was activated
    • Command Notes: said "click order now"
VoiceOver (iOS)Safariyes
  • Result: (pass)
    • Test Case: Use Swipe Right (Next item) to navigate forward to `#target`
      1. Launch VoiceOver (iOS) and Safari.
      2. Navigate to the test page.
      3. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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: "order now, link"
VoiceOver (macOS)Safariyes
  • Result: (pass)
    • Test Case: Use Tab (Read next focusable item) to navigate forward to `#target`
      1. Launch VoiceOver (macOS) and Safari.
      2. Navigate to the test page.
      3. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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: "order now, link"
Windows Speech RecognitionChromenone
  • Result: (fail)
    • Test Case: Use "Click <text>" (Activate item by name)
      1. Launch Windows Speech Recognition and Chrome.
      2. Navigate to the test page.
      3. Find the target element(s) that you will test against. Identify all elements that match this selector:#target
        • If multiple elements match the selector, 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: button was not recognized
    • Command Notes: said "click order now"

Extended Support for: CSS generated content: be included as part of the accessible 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

Dates and Versions of tested combinations

ATAT VersionBrowserBrowser versionOS versionDate tested
Dragon Naturally Speaking15.30Chrome8119092020-04-17
JAWS2019.1912.1Chrome8119092020-04-17
JAWS2019.1912.1IE1119092020-04-17
JAWS2019.1912.1Firefox7419092020-04-17
Narrator1909Edge4419092020-04-17
NVDA2019.3.1Chrome8119092020-04-17
NVDA2019.3.1Firefox7419092020-04-17
Orca3.34.0Firefox74Ubuntu 19.102020-04-17
TalkBack8.1Chrome81102020-04-17
Voice Access (Android)3.1Chrome81102020-04-17
Voice Control (iOS)13.4.1Safari13.4.113.4.12020-04-17
Voice Control (MacOS)10.15.4Safari13.110.15.42020-04-17
VoiceOver (iOS)13.4.1Safari13.4.113.4.12020-04-17
VoiceOver (macOS)10.15.4Safari13.110.15.42020-04-17
Windows Speech Recognition1909Chrome8119092020-04-17

History

  • 2020-04-17 test added