我注意到当你把输入元素放入标签元素中时,HTML标签不需要使用“for”属性:
<label><input type="text">Last name</label>
但我想知道最佳实践是什么。有人能帮我吗?
谢谢!
该标签用于屏幕阅读器等辅助功能,例如:
因此,您应该使用它。这里有一个链接,以使您了解通达性的重要性。
这里有个小故事-使您的网站可访问可以惠及所有用户-我一直很惊讶市政当局为轮椅通行设施付出的努力,直到我有了女儿并使用婴儿车。我认为网站也遵循同样的规则-每个人都受益。
抱歉我有点啰嗦了。
根据W3 HTML 5.2标准和WhatWG Living Standard(引用自后者)的几乎相同的表述:
for属性可以用来指示将标题与哪个表单控件相关联。如果指定该属性,则该属性的值必须是与label元素在同一棵树中的可标记元素的ID。如果指定了该属性,并且在树中有一个元素的ID等于for属性的值,并且第一个这样的元素按照树的顺序是可标记元素,则该元素是标签元素的标记控件。
因此,在遵循HTML标准方面,使用它是可以的。
对于文本输入框,for属性并没有太大的作用,但是在复选框输入框中非常有用,因为它允许用户既可以点击标签,也可以点击复选框本身:
<label for="chk">Checkbox</label><input type="checkbox" id="chk" />
<input>
放在<label>
内部,则for
属性仅适用于后者,并且两种方法都可以接受。 - Blazemongerfor
是技术上多余的;如果使用,为什么? - Jeff Schwab