有时,在我的可访问性审核中,我会遇到 <p>
标签内没有任何内容。屏幕阅读器会读出“空”,浪费我和任何残疾人浏览网站的时间。
当我传递 <hr>
时,还会读取“分隔符”等冗余元素。标签。
我知道这些事情会降低无障碍体验。但他们是否被认为违反了 WCAG 标准?如果是这样,那么标准是什么?标准中是否考虑到了这个主题?
最佳答案
空段落、div、span 等对于辅助技术的用户来说肯定很烦人,最好的做法是删除它们,但它们并不是 WCAG 失败。
据我所知,唯一可能导致 WCAG 失败的空元素是:
- 标题 - 标题元素必须描述页面的用途(S.C. 2.4.2 A 级)
- 标签 - 与输入字段关联的表单标签不得为空( S.C. 3.3.2 AA 级)
- 标题 - 标题元素 (h1-h6) 不是必需的,但如果存在标题元素,则它必须包含描述内容的文本(S.C. 2.4.6. AA 级)里>
- 表格 - 如果表格元素用于表格数据,则它必须包含 tr、td 和 th 项(S.C. 1.3.1. A 级)。
- 表格标题 - 显示表格数据需要表格标题 (th) 元素。虽然对空表格单元格 (td) 没有限制,但表格标题不能为空( S.C. 1.3.1. A 级)
- 列表 - 列表元素(ul、ol、dl)必须将列表项作为子元素。 ( S.C. 1.3.1. A 级)
- 链接 - anchor 元素 (a) 必须具有有效的 href 值和可通过编程方式识别的文本,由可访问名称计算算法确定(WCAG 4.1.2 A 级)。
如果没有必需的属性,还有更多的事情会失败,但这似乎有点超出了问题的范围。
关于accessibility - WCAG 是否处理空/冗余元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68281369/