这段代码可以在Chrome中使用,但默认的单选按钮在IE中显示在样式上。
在IE中,单选按钮未被隐藏。这是代码。
input[type=radio] {
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
width: 15px !important;
height: 15px !important;
border: 3px solid #999999 !important;
border-radius: 50% !important;
outline: none !important;
}
input[type=radio]:hover {
}
input[type=radio]:before {
content: '' !important;
display: block !important;
width: 100% !important;
height: 100% !important;
margin: 0 auto !important;
border-radius: 50% !important;
}
input[type=radio]:checked:before {
background: #005eb8 !important;
}

<input type="radio" id="a"/>No 1
&#13;
答案 0 :(得分:0)
代码的问题是它使用input
元素上的伪。
伪元素不应该适用于单个标记元素,例如input
,img
等等,尽管Chrome仍然允许它
如果您在label
上设置伪,则可以跨浏览器
div {
padding: 5px 0;
}
input[type="radio"] {
display: none;
}
input[type="radio"] + label::before {
content: '';
display: inline-block;
width: 14px;
height: 14px;
margin: 0 8px -2px 0;
cursor: pointer;
border-radius: 50%;
border: 1px solid gray;
}
input[type="radio"]:checked + label::before {
background: #005eb8;
}
<div>
<input type="radio" id="r1" name="rd">
<label for="r1">Button 1</label>
</div>
<div>
<input type="radio" id="r2" name="rd">
<label for="r2">Button 2</label>
</div>
答案 1 :(得分:-1)