【发布时间】:2023-04-07 12:42:01
【问题描述】:
WCAG 2(A 级)验证检测到此错误。
我使用儿童 wordpress 主题。我尝试使用 Javascript 修复标签,但 WCAG 2 仍然突出显示错误。
编辑:这是没有 javascript 的摘录。 javascript 文件在页面末尾加载。
【问题讨论】:
标签: javascript html wordpress wordpress-theming wcag
WCAG 2(A 级)验证检测到此错误。
我使用儿童 wordpress 主题。我尝试使用 Javascript 修复标签,但 WCAG 2 仍然突出显示错误。
编辑:这是没有 javascript 的摘录。 javascript 文件在页面末尾加载。
【问题讨论】:
标签: javascript html wordpress wordpress-theming wcag
看起来该消息来自AChecker。 (有时告诉人们您使用的是什么无障碍工具会有所帮助。)
错误是不是抱怨
标签元素代表用户界面中的标题。标题可以与特定的表单控件相关联,称为标签元素的标签控件,可以使用 for 属性,或将表单控件放入标签元素本身。
现在,话虽如此,曾经(并且可能仍然存在)屏幕阅读器和浏览器的某种组合不支持 implicit 标签并要求您指定 for
不管怎样,回到最初的问题。 Error 188 表示标签本身 没有任何文字。您在 上有一个 class="screen-reader-text",它是标签内唯一的文本来源。如果该类具有display:none 或visibility:hidden,则可能会导致错误,因为文本将对所有 用户隐藏。但是,如果您的 screen-reader-text 类只是在视觉上隐藏了文本(类似于 What is sr-only in Bootstrap 3?),那么屏幕阅读器可以使用文本,但有视力的用户可能看不到该文本。我不确定这是否会导致 AChecker 错误地标记它。
【讨论】:
你需要添加'aria-label'属性
或者
你需要添加
<label for="search-input">Label</label>
并将输入ID设置为搜索输入
【讨论】:
在我的例子中,输入上方没有标签(我只使用占位符字段)并且验证 WCAG 2.0(AA 级)失败。经过多次尝试,我发现在输入中添加标题字段可以解决问题。
【讨论】: