-
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
Develop basic carousel example #458
Comments
One of the patterns could be:
|
I designed and built a prototype carousel on codepen a while back, and just added some comments to it since it might be useful here. The general idea was to create a continuous list that conveyed a similar experience for everyone. It's easy to wrap a list for keyboard/screen reader users, but that can be tougher to convey visually. I ended up using 3D CSS transforms to literally render the list as a 3D carousel, but I forced the perspective to make it look more like a flat, scrolling list. I'm undecided about some of the choices I made about the roles, and would love feedback if anyone's interested. |
I have fixed the linter errors and have add two regression test for each example. Do you want me to do a pull request or wait for more feedback from the working group? |
@jongund, you could push those changes directly to the w3c:carousel-v2 branch and they will show up in the preview links we have in this issue. No need for a PR. |
@mcking65 I doing all my work in this branch now, so it should be up to date with what I have done. |
Propose edit to the auto rotation to accommodate for prefers-reduced-motion:
|
@mcking65 I have updated the example:
|
In reading the new pattern text, there is a problem with the aria-live guidance for the slide. It makes sense that this should be set to off on auto-rotation, In such cases, the only way to achieve this is to use an alternate, and possibly even hidden live region for the purpose of writing custom information E.G. This last is a technique that many developers use by appending an offscreen tag for the purpose of writing custom screen reader messages to be announced, |
@accdc commented:
If you pause the carousel in the current version of the example and then activate next or previous, the live region on the slide is reading the image labels along with the other text. It seems to work quite well. I'm trying it with JAWS 2019 in Chrome.
We have a live region like this in the layout grid examples. However, we do not yet have a guidance section for live regions, which we really need. That is definitely coming for the June 2019 release. After we have merged #951, it will be much easier to find examples like this. That adds an index of examples by role and an index of examples by states and properties. So for instance, you will be able to easily find all the examples that use aria-live. |
@nattarnoff commented:
I am familiar with the reduce motion setting in iOS, but have not heard of it elsewhere. In windows, I see a setting called "Turn off all unnecessary animations (when possible)." Is that the same? You seem to be implying that browsers respect these settings and make them available to web authors via CSS media queries? If so, that is amazing. I've never known there is a way for users to express such a need and have it respected by web content. If there is a robust approach to this, we absolutely want to illustrate it. What a fabulous thing to do for carousels! |
@mcking65 That Windows setting does the same thing as the iOS one. Its also available in Mac OS X. Right now only Firefox and Safari recognize the media query and OS settings, but it is on the list of features to add to Chromium, so hopefully Chrome and Edge will pick it up soon. |
Resolves issue #458 by adding a basic example of the carousel pattern that demonstrates how to make automatic rotation accessible.
Work is completed for the first release of the example with commit 4c846e4. |
There are no roles specific to carousel; there are many possible ways to construct them using ARIA. We will probably have a variety of examples that demonstrate primary features of the pattern that has been drafted for issue #43.
This issue is to develop an implementation of a basic carousel that includes auto rotation and a rotation control.
Integration of example implementations into the master branch is dependent on pull request #957, which will merge the carousel pattern developed for issue #43.
Links for review and test
The text was updated successfully, but these errors were encountered: