Skip to content

🎨 Palette: Semantic Form Group Accessibility#488

Open
n24q02m wants to merge 2 commits into
mainfrom
palette/semantic-fieldset-groups-3639899706133267183
Open

🎨 Palette: Semantic Form Group Accessibility#488
n24q02m wants to merge 2 commits into
mainfrom
palette/semantic-fieldset-groups-3639899706133267183

Conversation

@n24q02m

@n24q02m n24q02m commented Jun 16, 2026

Copy link
Copy Markdown
Owner

🎨 Palette: Semantic Form Group Accessibility

💡 What:

  • Replaced generic <div class="setting-row"> elements functioning as logical form groups with <fieldset class="setting-row">.
  • Replaced <label> elements serving as group headings with <legend>.
  • Removed redundant ARIA attributes (role="group", role="radiogroup", aria-labelledby) as they are natively provided by the new semantic elements.
  • Updated popup.css to reset default <fieldset> styling (removing borders/padding) and styled <legend> to visually match the previous <label> design.
  • Cleaned up obsolete assertions in tests/popup.test.js.
  • Logged the learning in .Jules/palette.md.

🎯 Why:
Following the "First Rule of ARIA," using native HTML elements is preferable to explicitly retrofitting generic containers with ARIA roles. This simplifies the markup, clears linter warnings (e.g., from Biome), and provides a more robust structure for assistive technologies.

📸 Before/After:
The visual layout remains pixel-perfect (verified via Playwright frontend verification).

♿ Accessibility:
Ensures form controls like radio buttons and segmented options are grouped natively and semantically, improving screen reader compatibility without relying on manual attribute linking.


PR created automatically by Jules for task 3639899706133267183 started by @n24q02m

💡 What: Replaced generic `<div>` groups using `role="group"` and `aria-labelledby` with native semantic `<fieldset>` and `<legend>` HTML elements in `popup.html`. Updated `popup.css` to reset default fieldset styling and match the intended label styling. Updated relevant tests.
🎯 Why: Native HTML elements implicitly provide grouping and accessibility features without relying on complex, explicit ARIA attributes, reducing code complexity and improving screen reader reliability.
📸 Before/After: Visual layout remains identical (verified via Playwright).
♿ Accessibility: Improved robustness by leveraging the "First Rule of ARIA" (use native HTML when available).

Co-authored-by: n24q02m <135627235+n24q02m@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.

@github-actions

github-actions Bot commented Jun 16, 2026

Copy link
Copy Markdown

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Scanned Files

None

💡 What: Replaced generic `<div>` groups using `role="group"` and `aria-labelledby` with native semantic `<fieldset>` and `<legend>` HTML elements in `popup.html`. Updated `popup.css` to reset default fieldset styling and match the intended label styling. Updated relevant tests. Formatted CSS with Biome.
🎯 Why: Native HTML elements implicitly provide grouping and accessibility features without relying on complex, explicit ARIA attributes, reducing code complexity and improving screen reader reliability.
📸 Before/After: Visual layout remains identical (verified via Playwright).
♿ Accessibility: Improved robustness by leveraging the "First Rule of ARIA" (use native HTML when available).

Co-authored-by: n24q02m <135627235+n24q02m@users.noreply.github.com>
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