magento / magento2

Prior to making any Submission(s), you must sign an Adobe Contributor License Agreement, available here at: https://opensource.adobe.com/cla.html. All Submissions you make to Adobe Inc. and its affiliates, assigns and subsidiaries (collectively “Adobe”) are subject to the terms of the Adobe Contributor License Agreement.
http://www.magento.com
Open Software License 3.0
11.38k stars 9.28k forks source link

Cart is not accessible to VoiceOver in base styles #21447

Open scottsb opened 5 years ago

scottsb commented 5 years ago

Preconditions (*)

All versions from 2.0.0 to 2.3.0

Steps to reproduce (*)

  1. Add two items to cart.
  2. Use VoiceOver on Mac to navigate through cart using "next item" keyboard shortcut or gesture.

Expected result (*)

VoiceOver navigates through each cell in sequence.

Actual result (*)

  1. VoiceOver skips the first cell containing the item name, meaning that a visually impaired user cannot understand what is actually in their cart.
  2. VoiceOver skips the last row in the cart (containing action buttons), meaning they cannot remove or edit the last item from their cart.

Diagnosis

These have two separate causes:

  1. VoiceOver skips the first table cell because it is marked with display: block, which VoiceOver interprets as meaning the cell is only presentational. Anytime CSS changes the display property on a table element, it effectively changes the implicit role as well. This can be fixed by either getting rid of the CSS rule, which doesn't seem necessary in the first place, or by explicitly adding a role="gridcell" to the first <td> where the CSS rule is applied.
  2. VoiceOver skips the last row due to how the <caption> is being hidden. This seems like it may be a bug in VoiceOver itself, but by virtue of the position: absolute being applied through the lib-visually-hidden mixin, it seems to remove it from the table (for a similar reason as the prior point), yet fail to internally account for this properly when determining how many rows to read through.

I may submit a PR for this, but I'm waiting for feedback on the best way to resolve the second issue. Glad to hear any suggestions here, and I've also posted on Stack Overflow: https://stackoverflow.com/questions/54876969/how-to-accessibly-hide-table-caption-element

magento-engcom-team commented 5 years ago

Hi @scottsb. Thank you for your report. To help us process this issue please make sure that you provided the following information:

Please make sure that the issue is reproducible on the vanilla Magento instance following Steps to reproduce. To deploy vanilla Magento instance on our environment, please, add a comment to the issue:

@magento-engcom-team give me 2.3-develop instance - upcoming 2.3.x release

For more details, please, review the Magento Contributor Assistant documentation.

@scottsb do you confirm that you was able to reproduce the issue on vanilla Magento instance following steps to reproduce?

Jitheesh commented 5 years ago

@magento-engcom-team give me 2.3-develop instance

magento-engcom-team commented 5 years ago

Hi @Jitheesh. Thank you for your request. I'm working on Magento 2.3-develop instance for you

magento-engcom-team commented 5 years ago

Hi @Jitheesh, here is your Magento instance. Admin access: https://i-21447-2-3-develop.instances.magento-community.engineering/admin Login: admin Password: 123123q Instance will be terminated in up to 3 hours.

adarshkhatri commented 5 years ago

@magento-engcom-team give me 2.3.0 instance

magento-engcom-team commented 5 years ago

Hi @adarshkhatri. Thank you for your request. I'm working on Magento 2.3.0 instance for you

magento-engcom-team commented 5 years ago

Hi @adarshkhatri, here is your Magento instance. Admin access: https://i-21447-2-3-0.instances.magento-community.engineering/admin Login: admin Password: 123123q Instance will be terminated in up to 3 hours.

adarshkhatri commented 5 years ago

@magento-engcom-team give me 2.3.0 instance

magento-engcom-team commented 5 years ago

Hi @adarshkhatri. Thank you for your request. I'm working on Magento 2.3.0 instance for you

magento-engcom-team commented 5 years ago

Hi @adarshkhatri, here is your Magento instance. Admin access: https://i-21447-2-3-0.instances.magento-community.engineering/admin Login: admin Password: 123123q Instance will be terminated in up to 3 hours.

magento-engcom-team commented 5 years ago

Hi @engcom-backlog-nazar. Thank you for working on this issue. In order to make sure that issue has enough information and ready for development, please read and check the following instruction: :point_down:

ghost commented 5 years ago

@magento-engcom-team give me 2.3-develop instance

magento-engcom-team commented 5 years ago

Hi @engcom-backlog-nazar. Thank you for your request. I'm working on Magento 2.3-develop instance for you

magento-engcom-team commented 5 years ago

Hi @engcom-backlog-nazar, here is your Magento instance. Admin access: https://i-21447-2-3-develop.instances.magento-community.engineering/admin Login: admin Password: 123123q Instance will be terminated in up to 3 hours.

magento-engcom-team commented 5 years ago

:white_check_mark: Confirmed by @engcom-backlog-nazar Thank you for verifying the issue. Based on the provided information internal tickets MAGETWO-98480, MAGETWO-98481 were created

Issue Available: @engcom-backlog-nazar, You will be automatically unassigned. Contributors/Maintainers can claim this issue to continue. To reclaim and continue work, reassign the ticket to yourself.

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed after 14 days if no further activity occurs. Is this issue still relevant? If so, what is blocking it? Is there anything you can do to help move it forward? Thank you for your contributions!

scottsb commented 3 years ago

I do not have time to verify at the moment that this is still valid in 2.4; however, this is an important issue for WCAG compliance, so I don't want it to be closed automatically.

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed after 14 days if no further activity occurs. Is this issue still relevant? If so, what is blocking it? Is there anything you can do to help move it forward? Thank you for your contributions!

dverkade commented 3 years ago

Posting a comment. Issues should not be automatically closed.

stale[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed after 28 days if no further activity occurs. Is this issue still relevant? If so, what is blocking it? Is there anything you can do to help move it forward? Thank you for your contributions!

m2-assistant[bot] commented 1 month ago

Hi @engcom-Delta. Thank you for working on this issue. Looks like this issue is already verified and confirmed. But if you want to validate it one more time, please, go though the following instruction: