如何创建带有可单击标签的HTML复选框(这意味着单击标签会打开/关闭复选框)
方法1:包装标签标签
将复选框包装在标签标记内:
<;标签>&书信电报;输入类型=";复选框“;名称=“名称”;复选框“;值=”;“价值”&燃气轮机;文本</标签>;
方法2:使用for属性
使用for属性(匹配复选框id):
<;输入类型=";复选框“;名称=“名称”;复选框“;id=”号;复选框“U id”;值=”;“价值”&燃气轮机;
<;标签for=";复选框“U id”&燃气轮机;文本</标签>;
注意:ID在页面上必须是唯一的
解释
由于其他答案没有提到它,一个标签最多可以包含1个输入,并省略for属性,并且假定它是针对其中的输入
摘自w3.org(我的重点是):
[for属性]将定义的标签与另一个控件显式关联。存在时,此属性的值必须与同一文档中其他控件的id属性的值相同不存在时,定义的标签与元素的内容相关联。
若要隐式地将标签与另一个控件关联,控件元素必须位于标签元素的内容中。在这种情况下,标签只能包含一个控制元素。标签本身可以放置在相关控件之前或之后
对于,使用此方法比有一些优点:
-
无需为每个复选框分配
id(太好了!) -
无需使用
中的额外属性<;标签> -
输入的可点击区域也是标签的可点击区域,因此没有两个单独的可点击位置可以控制复选框-只有一个,无论
<;输入>和实际标签文本都是,无论您对其应用何种CSS
使用一些CSS进行演示:
标签{
边框:1px实心#ccc;
填充:10px;
利润率:0.10px;
显示:块;
}
标签:悬停{
背景:#eee;
光标:指针;
}
<;标签>&书信电报;输入类型=“复选框”/>;方案1</标签>;
<;标签>&书信电报;输入类型=“复选框”/>;方案2</标签>;
<;标签>&书信电报;输入类型=“复选框”/>;方案3</标签>