搜尋

首頁  >  問答  >  主體

如何在CSS中對複選框應用2種不同的顏色?

我在我的頁面上使用複選框。效果很好。不過,我想要一個淺藍色的複選框,另一個淺黃色的複選框。目前兩個複選框都是淺藍色的。我怎麼才能把另一顆變成淺黃色?

這是我所擁有的。

input[type=checkbox] {
  position: relative;
  cursor: pointer;
margin-right: 10px;
}
input[type=checkbox]:before {
  content: "";
  display: block;
  position: absolute;
  width: 16px;
  height: 16px;
  top: 0;
  left: 0;
  border: 1px solid #99AFC1;
  border-radius: 3px;
  background-color: lightblue;
  padding: 1px;
}
input[type=checkbox]:checked::before {
  background-color: lightblue;
}

input[type=checkbox]:checked::after {
  content: "";
  display: block;
  width: 5px;
  height: 10px;
  border: solid #ffffff;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 2px;
  left: 6px;
}
<p><label><input type="checkbox" class="filter" value="Test1">Test1</label> <label><input type="checkbox" class="filter" value="Test2">Test2</label></p>

P粉949190972P粉949190972239 天前438

全部回覆(1)我來回復

  • P粉539055526

    P粉5390555262024-03-30 07:16:06

    *這在 Chrome、Edge 和 Firefox 中呈現相同的效果。

    只需為您想要的淺黃色提供一個類別
    對於跨瀏覽器方法,我使用了 進行樣式設定。

    label.checkbox input[type="checkbox"] {
      display:none;
    }
    label.checkbox span {
      display:inline-block;
      border: 1px solid Gray;
      border-radius: 4px;
      width: 18px;
      height: 18px;
      background-color: lightblue;
      vertical-align: top;
      position: relative;
    }
    label.checkbox :checked + span {
      width: 18px;
      height: 18px;
    }
    label.checkbox :checked + span:after {
      content: '14';
      font-size: 100%;
      position: absolute;
      top: -12%;
      left: 12%;
      color: lightyellow;
    }
    
    /* Make the above your default checkbox, and the below can be used for special ones. */
    
    label.checkbox.difcol span {
      background-color: lightyellow; /* New Box Color */
    }
    label.checkbox.difcol :checked + span:after {
      color: lightblue; /* Corresponding New Checkmark Color */
    }
    <p>
    <label class="checkbox"><input type="checkbox"/><span></span></label> Test1
    <label class="checkbox difcol"><input type="checkbox"/><span></span></label> Test2
    </p>

    回覆
    0
  • 取消回覆