chore(backlog): 记录 g348 完成
This commit is contained in:
@@ -3518,6 +3518,15 @@
|
||||
"acceptance": "① ua iter done 先取当前分支,不是 qa/probe 就退出码 2 并说明后果;② 保留 --force 给人工绕过;③ ITERATION.md 留痕步骤写明这条护栏;④ 负向自检:在 qa/stable 上执行即被拒、在 probe 上照常通过;⑤ npm run check 全绿。",
|
||||
"status": "done",
|
||||
"notes": ""
|
||||
},
|
||||
{
|
||||
"id": "g348",
|
||||
"domain": "tune",
|
||||
"title": "label 与控件真关联:点「用户名」不聚焦,读屏也报不出字段名",
|
||||
"motivation": "formItem 把 label 与控件放在同一个 div 里,但 label 既没有 for、也没有任何 aria 关联,两者在无障碍树上是陌生人:鼠标点标签不会聚焦输入框(表单最常见的肌肉记忆失效),读屏念到输入框只说「编辑框」,说不清是用户名还是邮箱。自绘控件(下拉 / 单选组)连原生 labelable 元素都没有,更需要 aria-labelledby 兜住。",
|
||||
"acceptance": "① 恰好一个原生控件时给控件补派生 id 并把 label 的 for 指过去(组件自带 id 不覆盖);② 无单一原生控件(自绘下拉 / 单选组)改在容器或首个可聚焦元素上写 aria-labelledby 指向 label id;③ label 自带 id 供关联;④ ua verify 新增 checkFormLabel 三条断言;⑤ demo 文案点出关联效果;⑥ npm run check 全绿。",
|
||||
"status": "done",
|
||||
"notes": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user