fix: #3625205 WCAG 2.2: 24px ticker targets and named navigation landmarks
From a WCAG 2.2 AA pass on a fresh Drupal CMS install: axe-core 4.13 over all 41 anonymous pages, plus keyboard, focus, reflow and target-size probes.
2.5.8 Target Size — Live Feed ticker links were 19px tall. .live-feed-item { min-block-size: 1.5rem }; measured 24px after.
Navigation landmarks — every menu block rendered an unlabelled <nav>. The block wrapper is now <nav aria-label> named by the block label, and the navbar inside is a <div>. Menus now announce as "Main navigation", "Footer", "Social media menu", "Footer menu".
Known residual, not fixed here. The main menu is placed three times (header, menu panel, footer) and all three announce "Main navigation". Canvas does not pass a block instance label through to the block — a throwaway instance label never rendered, and the block never reaches preprocess_block — so the theme has nothing distinct to name them with. No JavaScript workaround, by decision. The recipe carries distinct instance labels (#3625206) for when Canvas exposes the label input (#3572850). axe still reports landmark-unique (best practice, not a WCAG criterion) for that reason.
After, on the fresh site: article and podcast pages report only landmark-unique; home adds heading-order, which is recipe content. Skip link, 40 focus stops per page, offcanvas focus + Escape, search, 320px reflow and the audio player all pass.
Closes #3625205.
Checkpoints
- Addition/Change/Update/Fix to this project
- Testing to ensure no regression
- Accessibility and Readability
- Reviewed by a human
- Code review by maintainers
- Release
AI-Generated: Yes