label
和legend
来明确指出表单控件的必填状态____20160503该技巧的目的是为了成功提交数据,为特定表单控件、必填表单提供清楚的说明。一个样例或文字指明控件必填,使用label
说控件必填,并将样例或文本说明编程式链接到控件,或使用legend
通过fieldset
为群组控件提供必填说明。如果使用样例,用户在第一次使用前就被告知它的含义。
label for
)下面样例中的文本区域有明确的标签“名(必填)”。label
元素的for
属性的值为input
元素的id
属性,且label
文本指明控件必填。
注意:一些开发者习惯将“required
”简写为“req
”。但是有些证据表明这种缩写会令人困扰。
效果
效果
所需的区域都标有星号(*).
效果
指出表单控件必填
legend
元素为fieldset
元素定义标题(caption)
效果
在IE11浏览器中,争渡、永德、NVDA均朗读input
元素的标签,聚焦编辑框朗读:“名必填 可编辑文本”;
在IE11浏览器中,争渡、永德、NVDA均朗读input
元素的标签,聚焦编辑框朗读:“名 可编辑文本”;在Google chrome浏览器中,使用NVDA,tab键聚焦编辑框朗读:“名必填 可编辑文本”;
在IE11浏览器中,使用NVDA,当用tab从上向下浏览到分组内第一个元素的时候会朗读legend元素的内容,朗读的形式是:legend元素的内容+“分组”+当前访问的元素的标签+控件类型+选中状态,朗读样例:“我对以下必选项感兴趣 分组 摄影 复选框 未选中”;使用争渡、永德,tab键浏览时,无法感知legend元素的存在。