html - 如何在不为整个类(class)更改复选框的情况下更改复选框的颜色?

标签 html css

我需要更改复选框标签的样式。

这是我的 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 的 div 并编写了 jQuery:

function changeCheckBoxStyle() { 
   $('#checkBoxWrapper').find('[class=ui-btn-text]').css('color','red');
 }

但我认为 scott 的解决方案也很有效 :) 谢谢

最佳答案

假设您正确使用 ID(页面唯一),那么这应该有效:

#keepMeInformed + label .ui-btn-text {
    color: red;
}

它寻找唯一的 input 元素 keepMeInformed 然后找到它旁边的兄弟 label 元素并将样式应用于该标签的 .ui-btn-text 仅限类元素。

关于html - 如何在不为整个类(class)更改复选框的情况下更改复选框的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8588441/

相关文章:

javascript - 具有多个属性的 css 转换适用于 firefox 但不适用于 chrome

jquery - 单击时在图像上方插入右图像

javascript - 使用 jQuery 和 Bootstrap-Typeahead 创建自定义 Type-Head?

javascript - 备用 CSS 和 javascript 链接

javascript - JavaScript 中有类似 Tag 属性(.NET)的东西吗?

html - CSS:页眉、页脚和可拉伸(stretch)的主要内容区域

html - 为什么我的 box div 位于本应位于其上方的两个元素后面?

python - 如何解析 CSS URL 中的特定值

html - Angular Material 2 : mat-button css to look like mat-button-toggle

html - 如何更改html中h2标题部分的颜色