浏览器兼容性经典问题(二) IE6 3像素bug问题

问题描述:

        当相邻的两个元素,一个是浮动的,另一个非浮动,那么在IE6 下面将会产生3像素bug。

问题代码:

<html>
     <head>
            <style>
              body{
	              margin:0px;
	              padding:0px;
              }

              #left_box{
	               background:#1C86EE;
	               float:left;
	               height:100px;
	               width:100px;
               }

               #right_box{
	                background:#76EE00;
	                height:100px;
	                width:200px;
                }
               </style>
      </head>

      <body>
            <div id="left_box"></div>
            <div id="right_box"></div>
      </body>
</html>

各浏览器效果图:



注释:

      如上图(上中下分别是firefox  chrome IE6):

     在firefox和chrome(包括IE8 IE9已测试)中,由于<div id="left_box">浮动了,所以脱离了文本流,导致了<div id="right_box">这个元素从头开始,所以蓝色覆盖在了绿色的上方。这是符合W3C标准的效果。

     而在IE6则产生了著名的3像素bug,在相邻的像素中间产生了3个像素的空隙。

     在IE7中(已测试),这个bug被修复了,消除了中间的3像素空隙。但是却不像firefox chrome那样符合W3C标准。


解决方法:

      在各个浏览器下使得相邻的元素都是浮动的便可


代码如下:

      

<html>
     <head>
            <style>
              body{
	              margin:0px;
	              padding:0px;
              }

              #left_box{
	               background:#1C86EE;
	               float:left;
	               height:100px;
	               width:100px;
               }

               #right_box{
	                background:#76EE00;
	                height:100px;
	                width:200px;
                        float:left;   /*加上浮动便可*/
                }
               </style>
      </head>

      <body>
            <div id="left_box"></div>
            <div id="right_box"></div>
      </body>
</html>

各浏览器效果图:

        


总结:

        其实这个问题并不是特别的眼中以至于要用复杂的代码去解决它,只要你写出能符合W3C标准的效果代码变可以无形中解决这个问题。这里提出只是因为让大家更好的了解一下IE6下一些莫名其妙的事情罢了。


浏览器兼容性经典问题(一) IE6 下双边距问题

 浏览器兼容性经典问题(三) IE6 不支持min-width属性

浏览器兼容性经典问题(四) 更好的清除浮动

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值