Skip to content

🎨 Palette: Enhance keyboard accessibility for signup tabs - #76

Open
AntonioCardenas wants to merge 1 commit into
mainfrom
palette-a11y-signup-tabs-2039563502103872716
Open

🎨 Palette: Enhance keyboard accessibility for signup tabs#76
AntonioCardenas wants to merge 1 commit into
mainfrom
palette-a11y-signup-tabs-2039563502103872716

Conversation

@AntonioCardenas

Copy link
Copy Markdown
Collaborator

💡 What
Added keyboard navigation support (Enter and Space keys), focus-visible styling (Tailwind ring), tabIndex={0}, and correct ARIA roles (tab, tablist, aria-selected) to the custom anchor (<a>) tabs used on the Signup page. Also removed a duplicated HTML id.

🎯 Why
The custom tabs on the Signup page were implemented using <a> tags without href attributes, making them unreachable via the Tab key and un-activatable via the keyboard for users who depend on keyboard navigation. They also lacked semantic roles, meaning screen readers would not announce them correctly as a tab group.

📸 Before/After

  • Before: Users tabbing through the page would skip over the tabs completely. Screen readers announced them vaguely as links or plain text.
  • After: Users can Tab into the tab list, see a clear focus indicator, switch tabs using Enter or Space, and hear proper semantic announcements via screen readers.

♿ Accessibility

  • Added role="tablist" to the container.
  • Added role="tab" and tabIndex={0} to the tabs.
  • Added aria-selected to reflect the active tab state.
  • Added onKeyDown handlers for Enter/Space selection.
  • Added focus-visible:ring-2 focus-visible:outline-none for visible focus indicators.
  • Removed the duplicate id="signup-tabs".

PR created automatically by Jules for task 2039563502103872716 started by @AntonioCardenas

Added standard ARIA roles, tabindex, and keyboard event listeners to the custom anchor-based tabs in the Signup component to ensure they are accessible to keyboard-only and screen reader users. Added Tailwind classes to provide a visible focus ring.

Co-authored-by: AntonioCardenas <11583391+AntonioCardenas@users.noreply.github.com>
@google-labs-jules

Copy link
Copy Markdown
Contributor

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@netlify

netlify Bot commented Aug 18, 2026

Copy link
Copy Markdown

Deploy Preview for heartfelt-swan-19c038 ready!

Name Link
🔨 Latest commit 7ed48d8
🔍 Latest deploy log https://app.netlify.com/projects/heartfelt-swan-19c038/deploys/6a848d5e9218e60008d45ec6
😎 Deploy Preview https://deploy-preview-76--heartfelt-swan-19c038.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant