css 如何更改禁用和选中复选框的样式?

8yoxcaq7  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(121)

我想将选中和禁用复选框更改为绿色。我试过改变背景颜色,颜色,重音颜色和轮廓-只有轮廓改变,所以我有灰色复选框与绿色轮廓。你有任何想法如何改变复选框为绿色,或者可能得到一些像x1c 0d1x准备img?
超文本标记语言:

<label>
                                <input type="checkbox"
                                       ng-model="t.isCorrected"
                                       disabled/>
                                {{('sth.isCorrectedLabel') | translate}}
                            </label>

CSS:

input[type=checkbox][disabled]:checked {
outline:2px solid green;
accent-color: green !important;
background-color: #FA9E57 !important;
}
kx5bkwkv

kx5bkwkv1#

这里有一个解决方案,它使用CSS将复选框的图像添加到输入的父级。在这个例子中,只有一个被禁用的复选框被样式化,并且可以完全自定义。

/* add custom checkbox to container with disabled checked checkbox */
.checkbox-container:has(> input:disabled:checked)::after {
    width: 10px;
    height: 10px;
    font-size: 9px;
    background: green;
    display: inline-block;
    border: 1px solid #000000;
    border-radius: 3px;
    color: white;
    position: relative;
    content: "✔";
    text-align: center;
    float: left;
    margin: 3px 4px 0 5px;
}

/* remove display of default disabled checked checkbox */
.checkbox-container input:disabled:checked {
    display: none
}
With new styling:

<div class="checkbox-container">
  <input type="checkbox" id="cb-enabled-1"  checked="checked"/><label for="cb-enabled-1">Enabled Checkbox</label>
</div>
<div class="checkbox-container">  
  <input type="checkbox" id="cb-disabled-unchecked-1" disabled="disabled" /><label for="cb-disabled-unchecked-1">Disabled Checkbox - Unchecked</label>  
</div>
<div class="checkbox-container">  
  <input type="checkbox" id="cb-disabled-checked-1" checked="checked" disabled="disabled"/><label for="cb-disabled-checked-1">Disabled Checkbox - Checked</label>    
</div>

<br>
Browser Default Styling:
<div>
  <input type="checkbox" id="cb-enabled-2"  checked="checked"/><label for="cb-enabled-2">Enabled Checkbox</label>
</div><div>  
  <input type="checkbox" id="cb-disabled-unchecked-2" disabled="disabled" /><label for="cb-disabled-unchecked-1">Disabled Checkbox - Unchecked</label>  
</div><div>    
  <input type="checkbox" id="cb-disabled-checked-2" checked="checked" disabled="disabled" /><label for="cb-disabled-checked-2">Disabled Checkbox - Checked</label>    
</div>

相关问题