Outline on categories not appearing for check boxes - 508/Accessibility issue

Created on 6 June 2023, over 1 year ago
Updated 22 March 2024, 8 months ago

Problem/Motivation

When using tab through the browse page using Safari, highlighting stops. (Appears to be fine with Chrome)

As you keep tabbing through, you can tell the selection is going through the category list. However, you do not see any outlines. Once you've tabbed through categories, the highlight appears for the rest of the browse items.

Steps to reproduce

Start at the top of the page... tab through and eventually you'll no longer see what item is currently selected.

Proposed resolution

Properly highlight the current selected checkbox for visual.

🐛 Bug report
Status

Fixed

Version

1.0

Component

User experience

Created by

🇺🇸United States mferanda

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Merge Requests

Comments & Activities

  • Issue created by @mferanda
  • 🇺🇸United States chrisfromredfin Portland, Maine
  • 🇮🇪Ireland lostcarpark

    Doesn't seem to happen on Firefox either. I don't have access to Safari right now, but will check later and see if I can spot a reason for it to only happen on that browser.

  • 🇺🇸United States kurttrowbridge

    Confirmed the described behavior on Safari: if I try to tab through the page, I only get the keyword search, the sort filter, and the tabpanel with the module list.

    However, I think that may be an issue with Safari browser settings, rather than anything that needs to be changed in the code here: there's seemingly a years-long issue in Safari where you have to adjust its settings (Safari > Settings > Advanced > check "Press Tab to highlight each item on a webpage") in order for tabbing to function as expected. Here's an example blog post about it: https://www.seanmcp.com/articles/tab-focus-not-working-in-safari/ The Stack Overflow post it links to goes back to 2009.

    Once I enable that setting, I can tab through the page as expected. There may be an issue with the checkboxes along the side, since I don't see a focus state applied to those (only in Safari; I do in Chrome and Firefox) as I tab through, but everything else looks fine to me.

  • 🇮🇪Ireland lostcarpark

    I agree with @KurtTrowbridge's comments.

    Tabbing through the categories only works in Safari if the "Press tab to highlight..." advanced option is enabled. However, I presume people who need keyboard navigation will be aware of this setting.

    With that setting enabled, the category checkboxes do not show any visual indication when they have the focus. Pressing space does select the current checkbox, but you don't know what checkbox will be selected until you press it.

    I also tested the default Extend tab (the old modules page), and the checkboxes do show a green outline when they have the focus on this page. I suspect this may be a CSS setting, but will have to look into why it only causes a problem on Safari.

  • 🇺🇸United States kurttrowbridge

    I did a little more digging here, and Safari has an issue styling hover/focus states on checkboxes and radio buttons. The recommendation to fix it usually seems to be resetting checkbox styles with appearance: none; and -webkit-appearance: none, alongside other CSS to restyle the inputs. In testing a few themes, the Olivero and Adminimal themes both do that for all radio/checkbox inputs, and as such, hover/focus states on checkboxes in the sidebar look as expected in Safari while using either of those as the admin theme; Claro and Gin do not have that CSS and end up with no applied hover/focus styles.

    I noticed #3300262 📌 Adjust the checkbox design for the categories sidebar to the Drupal Design system Postponed already brought up the need for the checkbox styles to change to match the Drupal design system, including the impact it would have on hover styles, and that's postponed due to larger CSS refactoring work in #3285889 🌱 [meta] Svelte app themability Needs work . Not sure if the former makes this a duplicate or if there's more we should do in this issue.

  • First commit to issue fork.
  • First commit to issue fork.
  • Open in Jenkins → Open on Drupal.org →
    Core: 10.2.x + Environment: PHP 8.1 & MySQL 5.7
    last update 9 months ago
    86 pass
  • Pipeline finished with Success
    9 months ago
    Total: 361s
    #115061
  • Pipeline finished with Skipped
    9 months ago
    #115077
  • Open in Jenkins → Open on Drupal.org →
    Core: 10.2.x + Environment: PHP 8.1 & MySQL 5.7
    last update 9 months ago
    86 pass
  • Status changed to Fixed 9 months ago
  • 🇺🇸United States chrisfromredfin Portland, Maine

    Thank you, everyone! this is an improvement over the current state of affairs, so i will merge it. then we can advance on to making the checkboxes match the design system better.

  • Automatically closed - issue fixed for 2 weeks with no activity.

Production build 0.71.5 2024