Skip to content

docs(pagination): put current page on link element for a11y #41154

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

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

MarkoOleksiyenko
Copy link
Contributor

Description

Update the Pagination examples to have the aria-current="page" on the link elements.
Modify the part where the active pagination element can be replaced with span.

Motivation & Context

Focusable pagination element should be marked with aria-current for the SR to read it properly (NVDA works with the attribute set on li but JAWS needs it to be on element).

Active pagination element should not be a span as assistive technology won't read it as active page.

reference of the aria-current and recommended usage:

Type of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Refactoring (non-breaking change)
  • Breaking change (fix or feature that would change existing functionality)

Checklist

  • I have read the contributing guidelines
  • My code follows the code style of the project (using npm run lint)
  • My change introduces changes to the documentation
  • I have updated the documentation accordingly
  • [] I have added tests to cover my changes
  • All new and existing tests passed

Live previews

Related issues

@mdo
Copy link
Member

mdo commented Apr 11, 2025

@patrickhlauke Mind giving your guidance here?

@patrickhlauke
Copy link
Member

only partially agree here. yes, aria-current should be on the links, not their parent list items.

however, it's the author's choice whether or not they want to have the current page's pagination as an active link or not. it's perfectly valid to decide not to make the current page's indicator a link at all. at that point, you can also omit the aria-current altogether.

@MarkoOleksiyenko
Copy link
Contributor Author

Hello @patrickhlauke and @mdo, thank you for the replies :) Indeed it's the author's choice to put the pagination elements as link or not. The idea here is to provide an accessible example in Bootstrap that is aligned with major SRs (JAWS, NVDA) so that by default their code is a11y compliant.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants