选择按输入类型标签

时间:2012-10-23 13:47:07

标签: css css-selectors label

有没有办法按输入类型排除或选择Label,类似于输入字段?

label:not([type=checkbox])
label[type=checkbox] 

3 个答案:

答案 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>

如果你没想到......请告诉我们......