Label标签使用
label标签简介
label标签和span标签类似。但label标签和span标签最大的区别就是它为鼠标用户改进了可用性,可以关联特定的表单控件。
label标签和特定表单控件关联之后,如果用户在 label 元素内点击文本,就会触发关联的表单控件。就是说,当用户选择该label标签时,浏览器就会自动将焦点转到和label标签相关的表单控件上。
label实例
显示关联
显式关联是通过label标签的for属性,显式与另一个表单控件关联**。**需要注意的是,for属性的值必须是与label标签在同一文档中的可标记表单元素的id。
<label for="username">Username</label>
<input type="text" id="username" placeholder="Enter username" />
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JEBmt4RR-1625736901602)(C:\Users\Dirk\Desktop\捕获.PNG)]
这个时候我在点击Username的时候,就会自动跳转到下面的输入框,增加了鼠标的可移动性。
隐式关联
隐式关联是直接将表单控件放到label标签内,这种情况下,label标签只能包含一个表单元素,包含多个只对第一个有效。如下
<label>
<p>用户名<input type="text" id="username" placeholder="Enter username" /></p>
<p> 邮箱<input type="text" id="email" placeholder="Enter email" /></p>
</label>
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0dN0kCdx-1625736901604)(C:\Users\Dirk\Desktop\捕获.PNG)]
这个时候label只对一个生效且是第一个,我在点击用户名会自动进去输入框,而我在点击邮箱的时候不会进去输入框。
显示关联和隐式关联的优缺点:
显式关联优点:
可以减少标签嵌套层数
label标签和表单可以在不同的位置
显示关联缺点:
控件需要定义id属性
label标签和表单控件不利于作为一个整体来控制
隐式关联优点:
控件无需定义id
标签和控件方便作为一个整体控制
隐式关联缺点:
增加了标签嵌套层数
不能将标签和关联控件放到不同的位置
以上是个人对两种方式的看法,使用时可按需要选择显示或隐式。
label标签的浏览器支持及可关联的表单元素
所有主流浏览器都支持label标签。Safari 2 或更早的版本不支持label标签。
能使用显示关联的表单元素有:
input type=“text” 文本框,点击标签时关联的文本框获得焦点。
input type=“checkbox” 复选框,点击标签时选中或取消选中复选框。
input type=“radio” 单选框,点击标签时选中单选框。
input type=“file” 文件上传,点击标签时打开文件选择对话框。
input type=“password” 密码框,点击标签时密码框获得焦点。
textarea 文本域,点击标签时文本域获得焦点。
select 下拉框,点击标签时,下拉框获得焦点,不过并不展开下拉框选项。
点。
textarea 文本域,点击标签时文本域获得焦点。
select 下拉框,点击标签时,下拉框获得焦点,不过并不展开下拉框选项。