Skip to content

fix(forms-specialist): treat placeholder on a labelled field as a duplicate name - #208

Open
chrisnestrud wants to merge 1 commit into
Community-Access:mainfrom
chrisnestrud:fix/forms-placeholder-duplicate-name
Open

chrisnestrud wants to merge 1 commit into
Community-Access:mainfrom
chrisnestrud:fix/forms-placeholder-duplicate-name

Conversation

@chrisnestrud

Copy link
Copy Markdown

Summary

A form field that has both an accessible name and a placeholder exposes the
placeholder as a second child node of the field, so JAWS and VoiceOver announce
the name twice. The skill only warned against using a placeholder as the sole
label, not against leaving one on a field that already has a name.

What changed

  • skills/forms-specialist/references/labels-the-foundation.md: new
    "Placeholder Is Not a Label" section (WCAG 4.1.2 / 1.4.3) covering the
    duplicate-name case and the described-help fix.
  • skills/forms-specialist/references/validation-checklist.md: new Common
    Mistakes entry.
  • skills/forms-specialist/SKILL.md: reference-list pointer text only, so the
    body stays under its budget.
  • skills/forms-specialist/examples/findings.json: new FORM-003.
  • CHANGELOG.md, skills/a11y-core/references/sources.md,
    docs/standards/source-registry.json.

Source Citations

Verification

  • node scripts/verify.mjs --only spec,skills,conformance,budgets,findings,report,scanner,release,matrices,docs - all pass
  • node .github/scripts/markdown-a11y-lint.mjs . --regression --baseline-ref main --fail-on error - clean

Refs #207

…licate name

A field that has both a label and a placeholder exposes the placeholder as a
second child node of the field in the accessibility tree, so JAWS and
VoiceOver announce the name twice. Add a Placeholder Is Not a Label section,
a FORM-003 finding, and a validation-checklist catch. Based on Chrome's
accessibility tree and the Freedom Scientific standards-support tracker.
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