用途:该规则属于前端无障碍检查清单,要求所有 <input>(type=hidden 除外)、<textarea>、<select> 以及使用 role=textbox、role=combobox、role=spinbutton 等的自定义表单控件,都必须具有以编程方式关联的无障碍名称。
主要能力:屏幕阅读器在聚焦输入框时会先播报无障碍名称,缺失名称时 VoiceOver 只读“text field”、NVDA 只读“edit”,盲人用户无法判断该填什么。语音控制用户(如 Dragon NaturallySpeaking)需要可见标签文字与无障碍名称一致,才能通过“click Email Address”等指令移动焦点。该规则对应 WCAG 2.1 SC 1.3.1(信息与关系)和 SC 4.1.2(名称、角色、值)。
使用方式:检查每个输入元素是否满足以下之一:存在 for 属性与输入 id 匹配的 <label>;输入具有非空 aria-label;或输入具有指向可见元素的 aria-labelledby。修复首选为匹配的 label 与 id,其次为 aria-label,再次为 aria-labelledby;占位符 placeholder 不能作为无障碍名称,只能作为格式提示保留。自定义控件同样需检查。
适用场景:前端表单开发与代码审查、无障碍验收测试。
限制:资料未提供具体框架示例与完整实现细节,仅指向 references/rule.md 与规则页面 https://frontendchecklist.io/rules/accessibility/aria-input-field-name。