label标签介绍

label标签为input元素定义标注(标记),它不会向用户呈现任何特殊效果,和span标签类似。但label标签和span标签最大的区别就是它为鼠标用户改进了可用性,可以关联特定的表单控件。

label标签和特定表单控件关联之后,如果用户在 label 元素内点击文本,就会触发关联的表单控件。就是说,当用户选择该label标签时,浏览器就会自动将焦点转到和label标签相关的表单控件上。

主要使用场景

label标签常用于与checkbox或radio关联,以实现点击文字也能选中/取消checkbox或radio。如下图,点击文字和点击前面的单选框效果相同,即加大了控件的可点击区域较大,因为点击标签或控件都将激活控件,这对于复选框和单选框特别有用。

label标签和特定表单元素关联方式

label标签的关联方式主要有两种,显示关联隐式关联

方式1:显式关联

显式关联是通过label标签的for属性,显式与另一个表单控件关联。需要注意的是,for属性的值必须是与label标签在同一文档中的可标记表单元素的id,注意是id而不是name。如:

爱好:
<input type='checkbox' name='basket' id='basketball'>
<label for="basketball">篮球</label>
<input type='checkbox' name='football' id='football'>
<label for="football">足球</label>

效果图:

隐式关联

隐式关联是直接将表单控件放到label标签内,这种情况下,label标签只能包含一个表单元素,包含多个只对第一个有效。如下:

<label>点击我可以使文本框获得焦点<input type='text' name='theinput' id='theinput'>
</label>

效果图如下,点击文字便能是文本框获得焦点:

显示关联和隐式关联的优缺点:

显式关联优点:

  1. 可以减少标签嵌套层数
  2. label标签和表单可以在不同的位置

显示关联缺点:

  1. 控件需要定义id属性
  2. label标签和表单控件不利于作为一个整体来控制

隐式关联优点:

  1. 控件无需定义id
  2. 标签和控件方便作为一个整体控制

隐式关联缺点:

  1. 增加了标签嵌套层数
  2. 不能将标签和关联控件放到不同的位置

以上是个人对两种方式的看法,使用时可按需要选择显示或隐式。

label标签的浏览器支持及可关联的表单元素

所有主流浏览器都支持label标签。Safari 2 或更早的版本不支持label标签。

能使用显示关联的表单元素有:

  • input type="text" 文本框,点击标签时关联的文本框获得焦点。
  • input type="checkbox" 复选框,点击标签时选中或取消选中复选框。
  • input type="radio" 单选框,点击标签时选中单选框。
  • input type="file" 文件上传,点击标签时打开文件选择对话框。
  • input type="password" 密码框,点击标签时密码框获得焦点。
  • textarea 文本域,点击标签时文本域获得焦点。
  • select 下拉框,点击标签时,下拉框获得焦点,不过并不展开下拉框选项。

label标签的form属性

form 属性指定label标签元素所属的表单。如下,虽然label标签在myform表单外,但仍属于myform表单。如下:

<form action="http://songguoliang.com/test.html" id="myform"><input type="radio" name="sex" id="male" value="male"><br><label for="female">女</label><input type="submit" value="提交">
</form><label for="male" form="myform">男</label>

效果图如下,点击”男”同样可以选中第一个单选框

注:
该form属性已于2016年4月28日从HTML规范中删除。但是,脚本仍然可以访问只读HTMLLabelElement.form属性; 它返回标签的关联控件是成员的形式,或者null如果标签未与控件相关联或控件不是表单的一部分。

HTML label标签介绍相关推荐

  1. Label 标签使用

    label标签介绍 label标签为input元素定义标注(标记),它不会向用户呈现任何特殊效果,和span标签类似.但label标签和span标签最大的区别就是它为鼠标用户改进了可用性,可以关联特定 ...

  2. HTML Label标签使用

    转载 from :https://blog.csdn.net/gnail_oug/article/details/72852150 label标签介绍 label标签为input元素定义标注(标记), ...

  3. lable标签的宽度_html中的label标签怎么设置高度?label标签的使用方法介绍

    本篇文章主要的介绍的是关于HTML中的label标签设置高度的方法.还有关于HTML label标签的使用方法介绍.下面就让我们一起来看这篇关于html label标签的文章吧 首先我们先来看看在ht ...

  4. input表单标签和label标签以及常使用标签的介绍

    文章目录 一.input表单标签 1.文本框 2.密码框 3.单选框 4.复选框 5.文件选择 6.按钮 二.button按钮标签 三.select下拉菜单标签 四.textarea文本域标签 五.l ...

  5. python label怎么用_python tkinter label标签怎么使用?

    终于有机会给大家介绍了label标签内容,想必很多小伙伴已经迫不及待听小编说这个最常见的标签函数了吧,大家之所以喜欢,主要还是依赖于这个标签是我们每一次的编程必备,看着大家如此喜欢这个函数,一进入控件 ...

  6. HTML的BODY内标签介绍

    一.基本标签 <body><b>加粗</b><i>斜体</i><u>下划线</u><s>删除线</ ...

  7. python label标签的作用_label标签的作用是什么?

    label标签的作用是为鼠标用户改进了可用性,当用户点击[]标签中的文本时,浏览器就会自动将焦点转到和该标签相关联的控件上. label标签的作用: 一.标签定义及用法 在html中,标签通常和标签一 ...

  8. element 组件中 el-form-item label= ‘vue介绍 (vue设置)‘ 强制换行

    开发中 会遇到一些奇怪的标题,需要强制换行 但是label 中没法用换行标签,特殊符号.怎么解决? html代码中文字换行 <el-form-itemclass='singerH'label=& ...

  9. 使用fieldset、label标签制作form表单

    http://www.52css.com/article.asp?id=238 对于表单,是网页中非常常用的元素.但是在web standard建站的时候,他的排版容易人遗忘,到了真正用到的时候就发现 ...

最新文章

  1. SAP MM MIRO的时候,发票价格与物料主数据的价格(移动平均价)有差异的处理
  2. Python接口自动化实战 ( 第一阶段) - 封装接口请求类和异常处理
  3. python 三数之和
  4. 近似最近邻搜索ANN(Approximate Nearest Neighbor)
  5. 深入理解Three.js(WebGL)贴图(纹理映射)和UV映射
  6. 打开mysql的远程连接_开启mysql的远程访问权限
  7. 4.Flow Layout Pane
  8. Ubuntu20.04安装ROS Noetic
  9. MySql执行Sql语句时出现“MySqlException: Parameter ‘@maxNo‘ must be defined.”的错误
  10. bzoj1835基站选址(dp+线段树)
  11. cognos数据源配置修改oracle,Cognos 新建数据源报错(原创)
  12. 十年PHP架构师的成长之路,程序员必备
  13. 程序员写个爬虫程序,整个公司被端了?
  14. 拉普拉斯变换的性质 - 对查表
  15. 手机拍照反差对焦、相位对焦和激光对焦系统解析
  16. earn the python in hard way习题31~35的附加习题
  17. 自动驾驶是一门怎样的生意?盘点5家创业公司商业落地的3条逻辑...
  18. 计算机实训报告心得怎么写,计算机实训报告心得体会范文_计算机实训总结怎么写...
  19. Matlab小课堂1
  20. 任意输入一个年份 判断是否为闰年

热门文章

  1. 十进制转化成二进制(C++)
  2. 大脑懒惰比身体懒惰更难克服
  3. linux系统如何关闭触控板,在Deepin Linux 15.7系统中开启或关闭触摸板的方法
  4. Laravel 模型中 $hidden 的作用
  5. StoryBoard 创建tabBarController
  6. y_pred和y_prob结果不匹配
  7. 美国威士忌的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  8. mysql架构与存储引擎
  9. js创建对象的几种方式(推荐)
  10. 计算机毕业设计Java桌游店会员管理系统(源码+系统+mysql数据库+Lw文档)