- 标注 - html5 表单
HTML 元素(标签)表示用户界面中某个元素的说明。
浏览器支持
目前大多数浏览器支持 标签。 |
示例
click me
标签定义及使用说明
标签为 input 元素定义标注(标记)。
元素不会向用户呈现任何特殊效果。不过,它为鼠标用户改进了可用性。如果您在
元素内点击文本,就会触发此控件。就是说,当用户选择该标签时,浏览器就会自动将焦点转到和标签相关的表单控件上。
- for属性可把 label 绑定到另外一个元素。请把for属性的值设置为相关元素的id属性的值。
将一个和一个
元素放在一起会有以下几点好处:
- 标签文本不仅与其相应的文本输入在视觉上相关联;它也以编程方式与它相关联。这意味着,当用户点击到表单输入时,屏幕阅读器可以读出标签,使在使用辅助技术的用户更容易理解应输入哪些数据.
- 你可以单击关联的标签来聚焦或者激活 input,以及 input 本身。这种增加的命中区域为激活 input 提供了方便,包括那些使用触摸屏设备的。
想要将一个和一个
元素匹配在一起,你需要给
一个
id
属性。而需要一个
for
属性,其值和 input 的id
一样。
另外,你也可以将直接放在
里,这种情况就不需要
for
和id
属性了,因为这时关联是隐含的:
do you like peas?
其他使用事项:
- 标签标记的表单控件称为标签元素的标签控件。一个 input 可以与多个标签相关联。
- 标签本身并不与表单直接相关。它们只通过与它们相关联的控件间接地与表单相关联。
- 当点击或者触碰(tap)一个与表单控件相关联的
时,关联的控件的
click
事件也会触发。
属性
该元素包含全局属性.
for
可标记的 form 相关元素的id
,在同一文档中作为label元素。第一个这样的元素在文档中有一个ID匹配属性值,作为这个label元素的labeled control。注意:label元素可同时有属性和包含控件元素(contained control element),只要此属性指向包含控件元素。form
表示label元素关联的form元素(它的表单拥有者)。此属性值必须是同一文档中元素的ID。如果未指定此属性值,元素必须是
元素的后代。应用此属性值,你可以将label元素放置在文档的任何位置,而不仅仅是作为它的拥有者
元素的后代。
属性 | 值 | 描述 |
---|---|---|
for | element_id | 规定 label 与哪个表单元素绑定。 |
form HTML5新增 | form_id | 规定 label 字段所属的一个或多个表单。 |
Technical summary
Content categories | 流式内容元素,段落内容元素,交互内容元素,form-associated element,段落内容元素. |
---|---|
Permitted content | 段落内容元素, but no descendantlabel elements. No labelable elements other than the labeled control are allowed. |
Tag omission | 不允许,开始标签和结束标签都不能省略。 |
Permitted parents | 可接受的任何元素段落内容元素. |
Permitted ARIA roles | None |
DOM接口 | HTMLLabelElement |
HTML 4.01 与 HTML 5 之间的差异
"form"属性是 HTML5 的新属性。
全局属性
标签支持全局属性,查看完整属性表HTML全局属性。
事件属性
标签支持所有HTML事件属性。
实例
带有两个输入字段和相关标记的简单 HTML 表单:
male
female
可访问性问题
相互影响的内容
不要在label
元素内部放置会相互影响的元素,比如anchors,或者buttons。这样做会让用户更难激活/触发与label
相关联的表单元素input
Don't
i agree to the terms and conditions
Do
i agree to the terms and conditionsread our terms and conditions
标题
在一个元素内部放置标题元素(heading elements)会干扰许多辅助技术,原因是标题通常被当成一个导航助手(a navigation aid)。若标签内的文本需要在视觉上做些调整,应该使用CSS伪类更改样式并应用到
元素中。
若一个form元素,或者form元素中的一部分需要一个标题,此时应该使用元素做标题,并将它放在
元素中。
Don't
your name
Do
your name
Buttons
元素若有着
type="button"
的宣告和有效的value
属性,则不需要添加label.若添加了,则可能会干扰辅助技术如何解析button input.元素也同样。
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!