Skip to content
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

Epic: Refactor website header to provide accessible navigation #4300

Open
1 of 6 tasks
Tracked by #1347
roslynwythe opened this issue Mar 28, 2023 · 46 comments
Open
1 of 6 tasks
Tracked by #1347

Epic: Refactor website header to provide accessible navigation #4300

roslynwythe opened this issue Mar 28, 2023 · 46 comments
Assignees
Labels
Complexity: Large Draft Issue is still in the process of being created epic Feature: Accessibility Issues that would broaden website accessibility Issue Making: Level 2 Make issue(s) from an ER or Epic role: front end Tasks for front end developers size: 2pt Can be done in 7-12 hours

Comments

@roslynwythe
Copy link
Member

roslynwythe commented Mar 28, 2023

Dependencies

These issues have been created from the epic:

  • Issue 1: Fix accessibility problems in the mobile navigation menu  #4301
    • Referring to the W3C sample code for navigation menu buttons (see Resources) update the HTML and JavaScript to do the following:
      • make explicit the role and name of the hamburger icon/button using WAI-ARIA attributes, so that a screen reader is informed about the purpose of the button.
      • add JavaScript to dynamically update the WAI-ARIA label "aria-expanded" so that a screen reader can announce whether the menu is expanded. Alternatively, create two separate <button> elements, one for displaying the menu and the other for collapsing the menu, and mark each with an appropriate WAI-ARIA label.
      • assign the taborder attribute to menu items so they are usable using keyboard navigation.
      • recommend if it is necessary to reformat the HTML in order to place the navigation button/menu within a <hav> element, or if role="nav" should be added to another element.
  • Issue 2: Enhance accessibility of the HfLA logo/Homepage link
    • Refactor HTML so that the HfLA logo (? and the Donate link) are contained within a <nav> element.
    • Improve "screen reader only" text for the logo or alternatively provide an explicit "Home" link.
  • Issue 3: Update the wiki page https://github.com/hackforla/website/wiki/How-to-make-SVGs-and-other-images-WCAG-compliant with guidance specific to button icons.

Overview

This epic addresses several problems navigating the site using a screen reader.

Details for Issue 1

The following issues prevent screen reader users from being able to navigate the website for mobile screen sizes:

  1. On page load there is no accessible name or role given to the "hamburger" icon/button to indicate that activating the button will display the primary navigation menu. The screen reader announces the button as "button list item" and so many users will skip over the button and lack access to the navigation links.
  2. If the mobile navigation menu links are displayed (when the "hamburger" navigation menu button is activated), the menu item links are not keyboard accessible because they are not in the tab order. This is a result of the dynamic placement of the menu items.

Details for Issue 2

  1. In both mobile and desktop views, the HfLA logo is not enclosed in the <nav> element and is not identified explicitly as representing the Home page. Currently it is identified to the screen reader user (using sr-only text) as "Hack for LA internal link". Options include changing the sr-only text to "Hack for LA Homepage", adding aria-labels/roles to clarify, or adding an explicit Home link in addition to the clickable logo.
  2. In both mobile and desktop views, the Donate link is not enclosed in the <nav> element,

Resources

Recommended Action Items

  • Make a new issue
  • Discuss with team
  • Let a Team Lead know

Potential solutions [draft]

@roslynwythe roslynwythe added role: front end Tasks for front end developers Complexity: Good second issue Draft Issue is still in the process of being created labels Mar 28, 2023
@roslynwythe roslynwythe self-assigned this Mar 28, 2023
@github-actions github-actions bot added the Feature Missing This label means that the issue needs to be linked to a precise feature label. label Mar 28, 2023
@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@roslynwythe roslynwythe changed the title Replace inline SVG with IMG elements for HfLA logo in website header Replace inline SVG with IMG tag for HfLA logo in site header Mar 28, 2023
@roslynwythe roslynwythe added the ready for dev lead Issues that tech leads or merge team members need to follow up on label Mar 28, 2023
@roslynwythe roslynwythe changed the title Replace inline SVG with IMG tag for HfLA logo in site header Provide <navigation> element for mobile site header Apr 2, 2023
@roslynwythe roslynwythe added Feature: Accessibility Issues that would broaden website accessibility Complexity: Medium and removed Feature Missing This label means that the issue needs to be linked to a precise feature label. Complexity: Good second issue labels Apr 2, 2023
@roslynwythe roslynwythe changed the title Provide <navigation> element for mobile site header ER: Refactor Hfla header to provide accessible navigation for all screen widths Apr 3, 2023
@roslynwythe roslynwythe removed the Draft Issue is still in the process of being created label Apr 3, 2023
@roslynwythe roslynwythe changed the title ER: Refactor Hfla header to provide accessible navigation for all screen widths ER: Refactor Hfla header to provide accessible navigation in mobile view Apr 4, 2023
@roslynwythe roslynwythe changed the title ER: Refactor Hfla header to provide accessible navigation in mobile view ER: Refactor Hfla header to provide accessible navigation Apr 4, 2023
@roslynwythe roslynwythe changed the title ER: Refactor Hfla header to provide accessible navigation ER: Refactor website header to provide accessible navigation May 4, 2023
@roslynwythe roslynwythe changed the title ER: Refactor website header to provide accessible navigation Refactor website header to provide accessible navigation May 5, 2023
@ExperimentsInHonesty ExperimentsInHonesty added this to the w. Accessibility milestone May 7, 2023
@ExperimentsInHonesty

This comment was marked as resolved.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

@HackforLABot

This comment has been minimized.

@HackforLABot

This comment has been minimized.

@HackforLABot

This comment has been minimized.

@HackforLABot

This comment has been minimized.

@HackforLABot

This comment has been minimized.

@HackforLABot

This comment was marked as outdated.

@ExperimentsInHonesty ExperimentsInHonesty moved this from In progress (actively working) to Emergent Requests in P: HfLA Website: Project Board Oct 15, 2024
@ExperimentsInHonesty ExperimentsInHonesty added Draft Issue is still in the process of being created and removed 2 weeks inactive An issue that has not been updated by an assignee for two weeks labels Oct 15, 2024
@ExperimentsInHonesty
Copy link
Member

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Complexity: Large Draft Issue is still in the process of being created epic Feature: Accessibility Issues that would broaden website accessibility Issue Making: Level 2 Make issue(s) from an ER or Epic role: front end Tasks for front end developers size: 2pt Can be done in 7-12 hours
Projects
Status: Emergent Requests
Development

No branches or pull requests

4 participants