Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • B bootstrap
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 263
    • Issues 263
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 114
    • Merge requests 114
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Bootstrap
  • bootstrap
  • Merge requests
  • !14295

Issue #13554 - Add aria and keyboard a11y to Tab

  • Review changes

  • Download
  • Email patches
  • Plain diff
Closed Administrator requested to merge github/fork/gerardkcohen/tab-keyboard into master Jul 31, 2014
  • Overview 0
  • Commits 4
  • Pipelines 0
  • Changes 2

Created by: gerardkcohen

Initial commit for issue #13554 (closed)

At this point, I am only looking for peer review. I have never used bootstrap but I am familiar with accessibility so I wanted to be a good citizen and help out.

This pull request adds proper aria and keyboard management to the Tab component by implementing the following:

  • aria-controls, aria-selected, and tabindex to tabs
  • keyboard navigation via arrows, and proper focus/ tab index management
  • aria-hidden and aria-labelledby on panels
  • id for tab added to example, as it is needed for aria-labelledby

Note: I did not add aria-expanded as it is not required for this pattern

I also included the addition of aria roles via JS in case they were left off in the markup. The only required role in the markup is the tablist role that is added the ul. I feel this will help overall accessibility by not burdening developers with needing to include or failing a11y if not/ incorrectly including. However, I did leave them in the examples in order to raise awareness/ education. I am not sure what the Bootstrap policy is about this.

If my approach is acceptable, I can continue with proper unit tests, documentation, etc.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: github/fork/gerardkcohen/tab-keyboard