有没有办法按输入类型排除或选择Label,类似于输入字段?
label:not([type=checkbox])
label[type=checkbox]
答案 0 :(得分:14)
如果您给复选框指定特定ID,所有ID都以相同的内容开头,您可以执行以下操作:
HTML
<input type="checkbox" id="chkTerms" />
<label for="chkTerms">Read terms & conditions</label>
CSS
label[for*="chk"], label[htmlfor*="chk"]
{
css here
}
可能只是现代浏览器。 编辑:我刚试过一个小提琴:link它适用于chrome和IE 8&amp; 9但不是7.我没有在FF中尝试过。
EDIT2:只是为了解释这里发生了什么,方括号查找一个名为的属性。 asterix将equals的行为从简单的equals更改为mean contains - 只要for属性包含“chk”,它就会应用该样式。您可以用*替换*,它会将其更改为以%而不是包含开头。
EDIT3:BoltClock在评论中为IE7提供了修复,我已经更新了包含它的答案。
答案 1 :(得分:3)
input[type=checkbox] + label { /*label style here*/ }
怎么样?如果text位于input元素之后,它可能会起作用。我没有测试过。
答案 2 :(得分:1)
您可以使用带有基本数据属性引用的复选框..
<input type="checkbox" name="checkbox-1" id="checkbox-0" class="custom" />
<label for="checkbox-0">Whatever</label>
如果你没想到......请告诉我们......