如何创建带有可单击标签的 HTML 复选框(这意味着单击标签可打开/关闭复选框)?
方法一:包裹标签标签
将复选框包裹在label
tag:
<label><input type="checkbox" name="checkbox" value="value">Text</label>
方法 2:使用for
属性
Use the for
属性(匹配复选框id
):
<input type="checkbox" name="checkbox" id="checkbox_id" value="value">
<label for="checkbox_id">Text</label>
NOTE:ID在页面中必须是唯一的!
解释
由于其他答案没有提及,标签最多可以包含 1 个输入并省略for
属性,并且将假定它用于其中的输入。
摘自w3.org http://www.w3.org/TR/html401/interact/forms.html#h-17.9.1(我强调):
[for 属性] 显式地将正在定义的标签与另一个控件相关联。如果存在,该属性的值必须与同一文档中其他控件的 id 属性的值相同。如果不存在,则定义的标签与元素的内容相关联。
要将标签与另一个控件隐式关联,控制元素必须位于 LABEL 元素的内容内。在这种情况下,LABEL 可能只包含one控制元件。标签本身可以位于关联控件之前或之后。
使用这种方法有一些优点for
:
带有一些 CSS 的演示:
label {
border:1px solid #ccc;
padding:10px;
margin:0 0 10px;
display:block;
}
label:hover {
background:#eee;
cursor:pointer;
}
<label><input type="checkbox" />Option 1</label>
<label><input type="checkbox" />Option 2</label>
<label><input type="checkbox" />Option 3</label>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)