Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Accessible Name Guidance by Role Section: Change marquee name from required to discretionary #1572

Merged
merged 1 commit into from
Oct 23, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion aria-practices.html
Original file line number Diff line number Diff line change
Expand Up @@ -4586,7 +4586,7 @@ <h4><span id="naming_role_guidance_heading">Accessible Name Guidance by Role</sp
</tr>
<tr>
<td><a href="#marquee" class="role-reference"><code>marquee</code></a></td>
<td>Required</td>
<td>Discretionary</td>
<td>Use <code>aria-labelledby</code> if a visible label is present, otherwise use <code>aria-label</code>.</td>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is ok but we could consider changing this to match the other discretionary roles which describe why you might want to give it an accessible name. However - I'm not sure I can really come up with a valid use case for that.

Copy link
Contributor

@carmacleod carmacleod Oct 16, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's valid to give a marquee a name, just didn't make sense to require it.

I very quickly tested 4 marquees using jaws/nvda in chrome/ff.

Notes:

  • The first 2 marquees use (obsolete) HTML <marquee> elements. One has aria-labelledby and the other has aria-label.
  • The next 2 are fake marquees that use a span (I didn't add any animation). As above, one has aria-labelledby and the other has aria-label.
  • Both browsers expose the role correctly, but I had to use role="marquee" ("belts and braces" style) on the 2 HTML <marquee> elements (otherwise, they just had a generic text container role).
  • Both browsers expose all 4 accessible names correctly, and they also expose the aria-live="off".
  • Both screen readers read the aria-labelledby span, because it's visible text content. :)
  • Neither screen reader read the aria-label.
  • Both screen readers read all of the marquee's content, i.e. they ignored the animated scrolling.

So we could say something along the lines of, "When naming a marquee, aria-labelledby with a visible label is recommended, because some screen readers do not read an aria-label on a marquee."

I'll try Safari/VO tomorrow.

Edit: Safari/VO reads all 4 marquees well (using VO+arrows), and even reads the name of the 2 aria-label marquees. The explicit role was also needed on the obsolete html marquee elements (same as Chrome/FF).

</tr>
<tr>
Expand Down