ing-bank / lion

Fundamental white label web component features for your design system.

Home Page:https://lion-web.netlify.app/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[calendar] Date bounds not clear for SR user.

erikkroes opened this issue · comments

When using a screen reader, it is not clearly communicated when a minimum or maximum date is reached. The keyboard navigation for these dates seems to be partially undefined.
For example, using VO+Safari, the screen reader stops using the keyboard interaction that lion offers. It tries to navigate the dates out of range as if they were normal text.

Following the pattern mentioned in #194 would be a solution for navigation.

This would still leave an issue. It would be hard for a screen reader user to know whether they are browsing a disabled date, or are outside the selectable date range. A text like ", before selectable date range" could be appended to the accessible name. Although I think there might be better phrasing. Suggestions welcome.

  1. use div instead of button
  2. put states (aria-disabled, aria-pressed, aria-current) on td role="gridcell"
  3. for disabled dates put only aria-disabled (no change to aria-label)
  4. for disabled dates before minDate => aria-describe-by... element with before first available date
  5. for disabled dates after maxDate => aria-describe-by... element with after last available date
  6. Do not force any "automatic" assistance for finding available dates to keyboard users

What to test

  • VO + safari
  • NVDIA + Firefox
  • JAWS + chrome

if unclear - I'm picking this and the other calendar a11y bugs up