如何更改 iOS 和安卓浏览器上的 input[type="radio"] 元素的默认样式?

Safari 上的默认样式是这样的,

背景颜色可以使用background-color改变,但中间那个点始终无法去掉。

我查了一些jQuery插件,如iCheck.js,但是那说明写得我都看不明白,根本不知道如何使用。

还有-webkit-appearance:none;属性会直接将input[type="radio"]元素隐藏。

应该如何更改?我的目标只是一个选中时是纯色的圆形,未选中时是带边框的透明圆形。

还可用css伪类写

<h3>CSS3 Custom radio</h3>
<div class="radio">
    <input type="radio" value="1" name="sex" id="radio1" checked>
    <label for="radio1">男</label>
    <br>
    <input type="radio" value="0" name="sex" id="radio2">
    <label for="radio2">女</label>
</div>
label {
    cursor: pointer;
    display: inline-block;
    font-size: 13px;
    margin-right: 15px;
    padding-left: 25px;
    position: relative;
}
input[type="radio"] {
    display: none;
}
label:before {
    background-color: #a06b63;
    bottom: 1px;
    box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.3) inset, 0 1px 0 0 rgba(255, 255, 255, 0.8);
    content: "";
    display: inline-block;
    height: 16px;
    left: 0;
    margin-right: 10px;
    position: absolute;
    width: 16px;
}
.radio label:before {
    border-radius: 8px;
}
input[type="radio"]:checked + label:before {
    color: #f3f3f3;
    content: "•";
    font-size: 30px;
    line-height: 18px;
    text-align: center;
}

地址:https://jsfiddle.net/chic/q2t1z17a/

时间: 2024-10-23 01:16:53

如何更改 iOS 和安卓浏览器上的 input[type="radio"] 元素的默认样式?的相关文章

webview 不支持文件上传 &lt;input type=&quot;file&quot; /&gt;

项目中遇到文件上传的需求,IOS直接是支持的,安卓端却没反应,有些机型甚至闪退. 找了很多原因,在网上找的办法,实测可行,做个记录,知识分享. Html文件上传 <input type="file" class="uploadBtn" multiple="multiple" accept="image/jpeg"> 手机端WebView重写方法 // 1.设置WebChromeClient,重写文件上传回调 mWe

纯css兼容个浏览器input[type=&#39;radio&#39;]不能自定义样式

各个浏览器对于表单input[type='radio'].input[type='checkbox']的样式总是各有差异 //html <div class="remember-account"> <input type="checkbox"> <span>记住账号</span> </div> //css .remember-account { display: inline-block; font-siz

【转】让iframe在iOS设备手机浏览器上支持滚动

HTML代码 在使用IFRAME或者其他HTML元素时,你需要使用一个元素(如DIV)来包装他们: <div class="scroll-wrapper"> <iframe src=""></iframe> </div> 这个DIV将作为支持内部滚动的基础容器. CSS 代码 要让IFRAME支持滚动,需要一个常用的CSS属性和一个很少人知道的CSS属性(property): .scroll-wrapper { -we

文件上传&lt;input type=&quot;file&quot;&gt;样式美化

<div class="fileInput left" style="width:102px;height:34px; background:url(http://images.cnblogs.com/cnblogs_com/dreamback/upFileBtn.png);overflow:hidden;position:relative;"> <input type="file" name="upfile"

在iPhone手机上写了input type=&quot;date&quot; 显示不出来的原因

在iPhone手机上写了input type="date" 显示不出来的原因 今天在手机页面上使用新的input类型,这样子写,在chrome浏览器上浏览,很好,显示出来.然后用iOS测试就无法显示. <input type="date"> 遇到这个问题,我的解决思路是:既然在chrome浏览器可以显示,在iOS系统上有问题,那应该是不同设备对这个属性的支持度的问题吧.我就把这个input框的value值也填上,果然,在iOS就能显示调用出日期选择了.

浏览器默认样式(User Agent Stylesheet)

原文:http://www.zjgsq.com/898.html 不同浏览器对于相同元素的默认样式并不一致,这也是为什么我们在CSS的最开始要写 * {padding:0;marging:0}: 不过现在说的可不只是这些.基本上,不同内核的两个浏览器在某些元素的表现都会存在差异,比如缩进的大小.字体选择.字符样式等.也许一个很漂亮的CSS样式表在一个浏览器上表现良好,在另外一个浏览器上即使是没有CSS Bug的情况也会变得结构混乱起来,我都是浏览器默认样式在作怪. 因此,我们在生成CSS样式规则

html中,文件上传时使用的&lt;input type=&quot;file&quot;&gt;的样式自定义

Web页面中,在需要上传文件时基本都会用到<input type="file">元素,它的默认样式: chrome下: IE下: 不管是上面哪种,样式都比较简单,和很多网页的风格都不太协调. 根据用户的需求,设计风格,改变其显示样式的场合就比较多了. 如果,要像下面一样做一个bootstrap风格的上传按钮该如何实现. 搭建上传按钮所需的基本元素 <span class=""> <span>上传</span> <

重置浏览器的默认样式(css reset)

(1)定义:首先css reset指的是重置浏览器的默认样式 (2)作用:因为现在的浏览器很多,并且每个浏览器都有自己的默认样式,这样就会导致一个页面在多个浏览器下展示产生差异,所以我们需要做一些处理使每个浏览器下展示一致,故需要css reset (3)内容:第一个:*{padding:0;margin:0;border:0;}第二个:你所用到的元素{padding:0;margin:0;border:0;},然而第一个虽然写起来简单,但是它却会将所有的标签重置,而我们可能没有必要将那么多的元

常用 更改input的placeholder颜色和滚动条样式更改

/*更改input的placeholder颜色*/ input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { color:#CCCCCC; } input:-moz-placeholder, textarea:-moz-placeholder { color: #CCCCCC; } input::-moz-placeholder, textarea::-moz-placeholder { color: #CCC