【发布时间】:2012-01-25 04:24:17
【问题描述】:
我需要更改复选框标签的样式。
这是我的html:
<div class="ui-checkbox">
<input id="keepMeInformed" type="checkbox" data-theme="d" onchange="fixCheckboxesValues();" checked="checked" value="1" name="optedIn">
<label class="optional ui-btn ui-btn-icon-left ui-btn-corner-all ui-btn-up-d ui-checkbox-off" for="keepMeInformed" data-theme="d">
<span class="ui-btn-inner ui-btn-corner-all" aria-hidden="true">
<span class="ui-btn-text">Label text</span>
<span class="ui-icon ui-icon-shadow ui-icon-checkbox-off"></span>
</span>
</label>
</div>
我需要将文本设为红色,但如果我更改 .ui-btn-text 类样式,页面的所有按钮都会变为红色文本样式。
.ui-btn-text{
color:red;
}
有没有办法只改变复选框中标签的颜色?
编辑:
感谢大家,我解决了添加一个包装 CheckBox 并编写 jQuery 的 div 的问题:
function changeCheckBoxStyle() {
$('#checkBoxWrapper').find('[class=ui-btn-text]').css('color','red');
}
但我认为 scott 的解决方案也可以 :) 谢谢
【问题讨论】:
-
很难在没有看到其余代码的情况下判断。您是否尝试过更具体的选择器,例如
.ui-checkbox .ui-btn .ui-bttn-inner .ui-btn-text { color:red; }? -
或者您可以创建一个新类
.ui-btn-text-red,它基本上具有与.ui-btn-text和color:red相同的所有属性?或者如果只是那个按钮,为什么不在HTML中给它一个id并做一个相应的css呢?