多个标签的CSS选择器[for = name]

时间:2013-11-21 15:21:03

标签: html css css-selectors

猜猜我在表单中有一个项目列表,我想选择一些标签并应用规则。

目前我正在这样做,我认为应根据其他选择器规则进行操作

#form-list-element label[for=strategy-clickAppend], label[for=strategy-fixedRedirect], label[for=strategy-iframe] 
{
    font-weight: normal;
}

但没有。

如果有人在那里遇到过同样的问题或知道我错过了什么,我将不胜感激。

感谢您的光临。

解:

我刚刚解决了我自己的问题而没有在css中指定元素规范。所以它看起来像

label[for=strategy-notImplemented], label[for=strategy-implemented], label[for=strategy-noDesktop], label[for=strategy-desktop] 
{
    font-weight: bold;
}

4 个答案:

答案 0 :(得分:2)

虽然你写了这个:

#form-list-element label[for=strategy-clickAppend], 
label[for=strategy-fixedRedirect], 
label[for=strategy-iframe] 

你可能意味着这个,更具体:

#form-list-element label[for=strategy-clickAppend], 
#form-list-element label[for=strategy-fixedRedirect], 
#form-list-element label[for=strategy-iframe] 

如果没有其他strategy-xx标签,您可以让现代浏览器的选择器更简单:

#form-list-element label[for^="strategy"] /* starts with "strategy" */ 

在任何一种情况下,请尝试在选择器中添加引号:

label[for="strategy-fixedRedirect"] 

答案 1 :(得分:2)

您可以使用选择器[attr*=""]

执行此操作
#form-list-element label[for*="strategy"] {
    font-size:normal;
}

使用此功能,您在for字符串中搜索所有带有strategy字样的项目。请记住将attr打包在"quotes"

演示 http://jsfiddle.net/rP8g2/7/

答案 2 :(得分:0)

你需要在每个选择器之后添加完整选择器,试试这个:

#form-list-element label[for=strategy-clickAppend], 
#form-list-element label[for=strategy-fixedRedirect], 
#form-list-element label[for=strategy-iframe]{
    font-weight: normal;
}

答案 3 :(得分:0)

我不确定这是否是一个特殊问题,但是如果你想在你的“form-list-element”ID中专门定位各种标签,你需要在每个标签之前重复ID选择器选择器,像这样:

#form-list-element label[for="strategy-clickAppend"],
#form-list-element label[for="strategy-fixedRedirect"],
... {