简体   繁体   English

禁用的单选按钮显示为选中状态

[英]Disabled Radio Buttons are being displayed as selected

I was working on applying some styles on radio buttons in a form, under the normal scenario they work just fine custom styles are being applied but if I disable the radio buttons they all are being displayed as selected. 我正在尝试以某种形式在单选按钮上应用某些样式,在正常情况下,它们可以正常工作,只是应用了良好的自定义样式,但是如果禁用单选按钮,它们都将显示为选中状态。

Here is my code: 这是我的代码:

  input ::-ms-clear { display: none; } .radio { margin: 0.5rem; } .radio input[type="radio"] { position: absolute; opacity: 0; } .radio input[type="radio"] ~ .radio-label:before { content: ''; background: white; border-radius: 100%; border: 1px solid #1c2e4f; display: inline-block; width: 1.4em; height: 1.4em; position: relative; top: -0.2em; margin-right: 1em; vertical-align: top; cursor: pointer; text-align: center; -webkit-transition: all 250ms ease; transition: all 250ms ease; } .radio input[type="radio"]:checked ~ .radio-label:before { background-color: #3E64AD; -webkit-box-shadow: inset 0 0 0 4px white; box-shadow: inset 0 0 0 4px white; } .radio input[type="radio"]:focus ~ .radio-label:before { outline: none; border-color: #3E64AD; } .radio input[type="radio"]:disabled ~ .radio-label:before { -webkit-box-shadow: inset 0 0 0 4px white; box-shadow: inset 0 0 0 4px white; border-color: #bfbfbf; background: #bfbfbf; } .radio input[type="radio"] ~ .radio-label:empty:before { margin-right: 5em; } .radio-label { line-height: 1rem; } 
  <div> <label> Radio buttons </label> <div class="col-md-3 radio"> <label class="radio-inline"> <input type="radio" value="'NONE'" name="feature1" checked="checked" disabled="disabled"/> <span class="radio-label"> OPT I </span> </label> </div> <div class="col-md-3 radio"> <label class="radio-inline"> <input type="radio" value="'NONE'" name="feature1" disabled="disabled"/> <span class="radio-label"> OPT II </span> </label> </div> <div class="col-md-3 radio"> <label class="radio-inline"> <input type="radio" value="'NONE'" name="feature1" disabled="disabled"/> <span class="radio-label"> OPT III </span> </label> </div> </div> </body> </html> 

without applying styles its working fine, can anyone point me where am I wrong here? 没有应用样式就可以正常工作,谁能指出我在哪里错了?

Remove this style: 删除此样式:

.radio input[type="radio"]:disabled ~ .radio-label:before {
  background: #bfbfbf;
}

Snippet: 片段:

  input ::-ms-clear { display: none; } .radio { margin: 0.5rem; } .radio input[type="radio"] { position: absolute; opacity: 0; } .radio input[type="radio"] ~ .radio-label:before { content: ''; background: white; border-radius: 100%; border: 1px solid #1c2e4f; display: inline-block; width: 1.4em; height: 1.4em; position: relative; top: -0.2em; margin-right: 1em; vertical-align: top; cursor: pointer; text-align: center; -webkit-transition: all 250ms ease; transition: all 250ms ease; } .radio input[type="radio"]:checked ~ .radio-label:before { background-color: #3E64AD; -webkit-box-shadow: inset 0 0 0 4px white; box-shadow: inset 0 0 0 4px white; } .radio input[type="radio"]:focus ~ .radio-label:before { outline: none; border-color: #3E64AD; } .radio input[type="radio"]:disabled ~ .radio-label:before { -webkit-box-shadow: inset 0 0 0 4px white; box-shadow: inset 0 0 0 4px white; border-color: #bfbfbf; } .radio input[type="radio"] ~ .radio-label:empty:before { margin-right: 5em; } .radio-label { line-height: 1rem; } 
  <div> <label> Radio buttons </label> <div class="col-md-3 radio"> <label class="radio-inline"> <input type="radio" value="'NONE'" name="feature1" checked="checked" disabled="disabled"/> <span class="radio-label"> OPT I </span> </label> </div> <div class="col-md-3 radio"> <label class="radio-inline"> <input type="radio" value="'NONE'" name="feature1" disabled="disabled"/> <span class="radio-label"> OPT II </span> </label> </div> <div class="col-md-3 radio"> <label class="radio-inline"> <input type="radio" value="'NONE'" name="feature1" disabled="disabled"/> <span class="radio-label"> OPT III </span> </label> </div> </div> </body> </html> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM