From 7033698a7bcc1dd33583585dadccdca7ae2c9d95 Mon Sep 17 00:00:00 2001 From: Sanindu Rathnayake Date: Wed, 18 Feb 2026 18:03:19 +0000 Subject: [PATCH] Accessibility errors fix in home page src/sections/Organisers.astro Added aria-label to all 5 partner links ("Resend", "Vulcan Works", "S-SA", "Digital Northants", "Barclays Eagle Labs") so screen readers announce the link destination. Added aria-hidden="true" to each partner SVG logo since they're decorative. src/sections/Connect.astro Added a visually-hidden aria-live="polite" region to announce form states to screen readers. The form now sets aria-busy="true" during submission and announces "Submitting..." and error messages. Added aria-hidden="true" to all 8 social media SVG icons since the parent tags already have aria-label. Replaced the throw on error with a user-facing message. The sr-only class makes it visually invisible. It's positioned off-screen with 1px dimensions and clipped. Only screen readers can see it. src/sections/Events.astro Replaced aria-label on the "Read more"

with aria-hidden="true". aria-label on a non-interactive

is misused, and the parent already provides context. Added aria-hidden="true" to the 3 decorative SVG icons (calendar, pin, price). src/sections/Hero.astro Added aria-hidden="true" to the .hero__grid container, which holds 24 empty decorative divs. Without this, screen readers traverse them unnecessarily. src/layouts/Layout.astro Added aria-hidden="true" to both hamburger and close SVG icons in the nav toggle button. The button's text label already provides the accessible name. src/components/Checkbox.astro Added aria-label={label} to the button to fix the empty button accessibility error. Added aria-hidden="true" to the checkmark SVG since it's decorative. --- src/components/Checkbox.astro | 4 +++- src/layouts/Layout.astro | 2 ++ src/sections/Connect.astro | 28 +++++++++++++++++++++++++++- src/sections/Events.astro | 5 ++++- src/sections/Hero.astro | 2 +- src/sections/Organisers.astro | 14 ++++++++++---- 6 files changed, 47 insertions(+), 8 deletions(-) diff --git a/src/components/Checkbox.astro b/src/components/Checkbox.astro index 5cebe08..60a400f 100644 --- a/src/components/Checkbox.astro +++ b/src/components/Checkbox.astro @@ -23,6 +23,7 @@ const { label, name, checked } = Astro.props; type="button" role="checkbox" aria-checked="false" + aria-label={label} > {label} diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro index 408d81b..8163ef4 100644 --- a/src/layouts/Layout.astro +++ b/src/layouts/Layout.astro @@ -102,6 +102,7 @@ const { stroke-linecap="round" stroke-linejoin="round" class="nav-toggle__icon nav-toggle__icon--close" + aria-hidden="true" >