From be92bfa4dd762169fdad7c1cf7dc8caac4426191 Mon Sep 17 00:00:00 2001 From: 0m364 <13804150+0m364@users.noreply.github.com> Date: Wed, 1 Jul 2026 10:50:03 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=8E=A8=20Palette:=20Improve=20accessibili?= =?UTF-8?q?ty=20and=20keyboard=20support=20for=20modal=20triggers?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Added `role="button"` and `aria-haspopup="dialog"` to `#sitrep-btn` anchor tags in `concepts.html`, `contact.html`, and `products.html`. - Added a `keydown` listener in `modal.js` to open the modal and prevent default page scrolling when the `Space` key is pressed. - Added a new UI test in `test_ui.py` to verify modal trigger ARIA attributes and keyboard functionality. - Logged the learning in `.Jules/palette.md`. --- .Jules/palette.md | 4 ++++ concepts.html | 2 +- contact.html | 2 +- modal.js | 6 ++++++ products.html | 2 +- test_ui.py | 21 +++++++++++++++++++++ 6 files changed, 34 insertions(+), 3 deletions(-) diff --git a/.Jules/palette.md b/.Jules/palette.md index 7c7c523..bcc27d8 100644 --- a/.Jules/palette.md +++ b/.Jules/palette.md @@ -29,3 +29,7 @@ ## 2026-06-12 - Robust Skip-to-Content Links **Learning:** Adding a "Skip to main content" link is a critical accessibility requirement for keyboard users. To make it robust, it needs to be hidden visually but appear when focused using `transform: translateY(-100%)` instead of magic pixel numbers, and the target container (e.g., `
`) must have a matching `id` and `tabindex="-1"` so it can programmatically receive focus across all browsers. **Action:** Always include a visually hidden 'Skip to main content' link immediately after the opening `` tag. Set the main content container with an `id` and explicitly `tabindex="-1"`. + +## 2026-06-25 - Anchor Tag Modal Triggers Keyboard Accessibility +**Learning:** When using `` tags with `href="#"` as modal triggers, they inherently only respond to the `Enter` key for keyboard users, whereas standard `