html-标签中的“ for”是什么?

刚在HTML标签标记中遇到了for参数:

<label for="required-firstname"> First Name </label>
<small>*</small>
<input name="required-firstname" type="text" tabindex="2" 
       id="required-firstname" size="24" maxlength="40">

我正在将此表单转换为PHP处理的脚本,可以摆脱for =参数吗?(出于好奇,它有什么用?)

lynn asked 2019-10-09T00:57:45Z
6个解决方案
86 votes

从w3schools.org:

标签定义输入元素的标签。

label元素不会呈现为用户的任何特殊内容。 但是,它为鼠标用户提供了可用性改进,因为如果用户单击label元素内的文本,则会切换控件。

标签的for属性应等于相关元素的id属性,以将它们绑定在一起。

HTH!

将我的$ .02美元添加为可访问性中小企业-以及可用性,LABEL还将输入字段与正确的标签相关联,因此使用屏幕阅读器的人员将知道该字段的用途。

Jonas answered 2019-10-09T00:58:24Z
17 votes

HTML标签标签定义了表单元素的标签。 它们通常与复选框和单选按钮一起使用,当用户单击标签时,它将切换按钮。 对于文本输入(您必须确保对此进行检查),我认为只有在用户单击标签时,它才会将焦点集中在输入上。

Bill the Lizard answered 2019-10-09T00:58:49Z
8 votes

它指定标签绑定到哪个元素。 在示例代码中,必需的名字输入字段带有标签。 如果用户单击该标签,则焦点将转到绑定的输入字段。 这是对可用性的改进,我认为最好还是保留它。 这是一个好习惯。

Pawel Krakowiak answered 2019-10-09T00:59:13Z
5 votes

它将标签与表单元素ID绑定。 某些表单元素(例如复选框)可以通过单击其标签来激活。

VirtuosiMedia answered 2019-10-09T00:59:37Z
5 votes

“ for”属性是表单可访问性的必要元素。 不要忽略它。 对于使用屏幕阅读器(SR)向其发布网页的用户,“ for”属性将控件与标签相关联。 通常,SR用户会通过一个选项卡浏览表格,从一个控件(它是SR的可聚焦元素)到下一个控件。 没有“ for”属性,SR用户将不得不更改SR上的模式并在表单周围进行搜索,以尝试确定哪个控件与哪个标签匹配,这可能既费时又令人困惑。 “ for”属性对于与运动相关的辅助技术也很有用。

WebAIM.org的页面很棒,解释了“ for”的可访问性后果:[http://webaim.org/techniques/forms/controls]

user3219915 answered 2019-10-09T01:00:09Z
3 votes

在某些浏览器中,当您单击for标记中的文本时,您会选中与之关联的框(即for = id)或将焦点放在该框上。 这是ADA的事情

Peter Turner answered 2019-10-09T01:00:33Z
translate from https://stackoverflow.com:/questions/698001/whats-the-for-for-in-a-label-tag