Open geoffrich opened 1 year ago
I myself think there should be a more specific solution like in WordPress they put h1 tag in the header to notify the route when the page loads or google gmail they have an alert notifying the process. In addition, you can also consult other visually impaired programmers to find a solution to thoroughly overcome this problem. I want svelte to be user-friendly for screen readers, no matter whether they interact via keyboard or other device, accessibility is always taken care of. Some aria labels or accesskeys are added to make svelte more flexible. I believe with my testing experience will help you with that.
I'm wondering why I created a dropdown menu like a collapsed Toggle navigation button but when I code it it doesn't work. I think, due to svelte's fault. This feature on svelte.dev already exists.
I mean it can collapse and expand menu like bootstrap and I wonder, does php allow to add accesskey but svelte? What I might want is to be able to leave it on top instead of at the bottom of the page.
Question: Do multiple liveregions on a page create interference with one another? I ask because I'm having difficulty with a separate liveregion on a svelte app being read, and I'm wondering if svelte's default liveregion is contributing to this difficulty. I'm not the only one who's had this difficulty
I haven't had any problems related to it and I only have difficulty when it's not optimized for screen readers like react, meaning it doesn't give detailed error messages.
Describe the problem
We got some feedback in https://github.com/sveltejs/svelte/issues/8508 from a screen reader user who was confused why the page's title appeared at the bottom of the page.
Presumably this is SvelteKit's live region for route announcements, e.g.
For those coming to this issue without prior experience with SvelteKit route announcements, here's a snippet from the docs explaining what they are and how they work:
This live region is invisible to sighted users, but is exposed to screen readers and other assistive technology. By updating it on navigation, the new route title is read out to those users. However, it's still present in the DOM, so an assistive technology user could encounter it and be confused by its presence.
Describe the proposed solution
I'm honestly not sure of a solve for this. We need the live region for route announcements, so removing it is not an option without figuring out an alternative way to announce the navigation.
Potentially some additional text clarifying the purpose of the region would help, but then we'd have to provide a way to localize that text (and additional text for screen readers to read out is not always a good thing).
Alternatives considered
If we are able to determine that the existing solution is acceptable (ideally by talking to other assistive technology users), then this issue can be closed.
Importance
nice to have
Additional Information
The route announcement in a live region method was part of the recommendation in Marcy Sutton's research on accessible client-side routing for Gatsby: https://www.gatsbyjs.com/blog/2019-07-11-user-testing-accessible-client-routing
Next.js also does something similar: https://nextjs.org/docs/accessibility#route-announcements
So we aren't out-of-line with other frameworks' solutions - though that doesn't mean we're in the clear.