0

我正在编辑用于 Web 可访问性的 html 代码,但我遇到了一个关于多个表单标签的问题。我正在使用 Wave 插件来检查 Web 可访问性。

错误是多个表单标签 含义 一个表单控件有多个与之关联的标签。

问题是有一个页面用户可以输入用户信息,并且有一个按钮来调用弹出然后如果用户没有输入该字段,弹出窗口将再次注册所有相同的字段。

除了在弹出窗口中更改字段的 ID,是否有任何快速简便的方法来消除错误?

4

2 回答 2

1

引用 W3S :

id 属性为 HTML 元素指定一个唯一的 id(该值在 HTML 文档中必须是唯一的)。

所以是的,您需要为每个组件定义一个唯一的 ID。这是解决您的问题的唯一干净方法,否则当您聚焦其中一个输入字段时,屏幕阅读器可能会读取错误的标签。

于 2019-07-05T21:15:23.957 回答
0

除了更改 ID 之外,解决此问题的一种方法是将输入包装在标签中。

<label>
    First Name
<input />
</label>

这在语义上是正确的,并且避免了需要的标签for和相关的输入id属性。

您显然可能需要重构一些东西,这似乎比仅仅更改一些 ID 更辛苦,但这是一个选择(我知道您现在可能已经解决了这个问题,如果其他人提出这个问题,这更多是为了参考。 )

请参阅:https ://stackoverflow.com/a/774065/2702894

于 2019-07-26T01:45:39.170 回答