-
Notifications
You must be signed in to change notification settings - Fork 355
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
Jump to main content, headings and more for the ARIA examples #1635
Conversation
Regression test coverage:Examples without any regression tests:
Examples missing some regression tests:
Example pages with Keyboard or Attribute table rows that do not have data-test-ids:
SUMMARY:55 example pages found. ERROR - missing tests: Please write missing tests for this report to pass. |
I'm not sure of the APG policy on using external code? Anyhow, here's a few initial review notes:
Other questions specifically about general APG example page markup (not quite related to Skipto, but makes me wonder):
|
In Firefox the numbers in front of the headings are not displayed in the same line as the brackets In IE 11 the button does not work, the menu cannot be opened (just for info, I know: there is no IE 11 support anymore)
I consider the current position to be ok. Left would be ok too
Absolutely. Menu is the wrong name
I do not know if all screenreaders output regions in this order. If so, then I agree
+1
+1
+1
Accesskey 0 should be perceptible for keyboard users. This is currently not the case. Should be visually visible.
This is a JAWS bug (see FreedomScientific/standards-support#471) that would no longer occur if the unnecessary title attribute is removed. Chrome correctly transfers the label to the Accessibility API |
the groupings in the menu are not recognized by JAWS and NVDA, and the group labels ("Landmark", Headings", "Actions") are not output. The labels are marked with role=separator. The brackets at the headlines are not very nice (in the screenreader output) and should be removed or e.g. replaced by a dot |
@carmacleod Jon |
@carmacleod |
@carmacleod
The priority is based on what keyboard users would want at the beginning of the menu. |
This is a critical issue and makes the menu pretty difficult to understand if you can't see it. In my exploration of accessible, labelled groupings for menu items, I didn't find a solution which worked with many screen reader and browser combinations, so this seems like a blocker. I'd also be interested in any user research which unequivocally declares this menu construct to be more useful than a simple skip link for keyboard users (e.g. it doesn't just introduce more keystrokes for no gain, especially on smaller pages).
This is directly related to skipto, because at present it renders a single item confusingly called "Menu" for it. Navigating this construct with a screen reader makes it sound like a badly implemented menu pattern because of all the repetition. Overall, I'd vote for a simple skip link, given the work required to make this menu more accessible and user-friendly. I don't think it should be an option to consider something which exhibits less than perfect accessibility for an APG example, and the skipto defaults aren't ideal. |
First, Jon, thank you for raising this. I think we should eventually do something like this. However, I am reluctant to do it now given that the APG redesign project will be starting the transition to the WAI web site early next year. APG 1.2 should be the last publication to TR. Then, we will be in continuous publication mode and say good bye to versioning! I think the best time to add a feature like this is after we have done the transition and start the actual redesign work. This would become part of the site infrastructure. The great thing about this PR is the discussion it is raising. There is clearly plenty to figure out. @carmacleod, we made an explicit decision a long time back to not put landmark regions inside of main, and in particular, not around the example. We tried it for a while. It just felt very confusing, especially when the example includes regions. Instead, we have the separator that clearly marks the beginning and end of the example for screen reader users, which seems like a good non-visual alternative to the visual design. The most important reason, though, is that we wanted to clearly model the difference between regions of a page and sections of content, the latter being represented by the IA exposed via headings. @jongund I would add that I'm personally not a fan of the heading level numbers in the menu, they sound like unhelpful clutter. I'm also not enthusiastic about using access keys to provide a keyboard shortcut. I'd rather have a js implementation so it's more reliable and consistent across browsers. I would love to see more experimentation in this PR. It'd be fabulous to have agreement on an approach/design before it is time to design. Then, the designer assigned to the APG redesign project would be able to incorporate it into the redesign proposal. |
@carmacleod @JAWS-test |
@mcking65 |
…ng menu items to make labels more like screen reader
@mcking65 @carmacleod @JAWS-test
Also the primary users I believe are keyboard only users and voice recognition users, so the visible labels should be geared for sighted users. It is still useful to screen reader users, by allowing the author to suggest the important regions of the page, since in a screen reader the list of landmarks and headings can get quite long. |
I updated the code to use JumpTo, instead of SkipTo, and used the W3C license for JumpTo. |
This pull request is superseded by PR #1860 |
The
jumpto.js
script dynamically generates a list of links to important landmarks and headings within each example page, and provide a menu button menu to navigate to the structure.We don't have a skip to main feature for the examples and this would be an easy way to implement the feature, plus provide more functionality than simple skip to main links found on many pages.
Links to examples with the JumpTo feature included: