IE7- radio无法去掉内边距
IE7-浏览器下,设置radio容器的margin和padding都为0都无法去掉圆点周围的补白内容,IE8和firefox浏览器可以去掉补白内容。
注:IE8需要添加xhtml申明为CSS1Compat才行。
最后只好用JS+图片来模拟radio选项,测试效果如下
获取焦点和没有焦点的2张radio图片:
源代码如下
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <style type="text/css"> body{background:#ffffff;} .radio label{line-height:15px;background:url(radio.gif) no-repeat left 1px;font-size:13px;padding-left:12px;cursor:pointer;} .radio label.checked{background-image:url(radio-checked.gif);} </style> <script type="text/javascript"> function doCheck(dv,e){ var o=e.target||e.srcElement; if(o!=dv){ var lbs=dv.getElementsByTagName('label'),input=dv.getElementsByTagName('input')[0]; lbs[1].className=lbs[0].className=''; o.className='checked'; input.value=o.getAttribute('value')||o.innerHTML; } } </script> <div class="radio" onclick="doCheck(this,event)"><label value="男">男</label> <label value="女">女</label><input type="hidden" name="sex"/></div> <input type="radio" style="margin:0px;padding:0px;"/>
加支付宝好友偷能量挖...
原创文章,转载请注明出处:IE7- radio无法去掉内边距