所有开发前端的学生都必须知道,IE6是兼容BUG多浏览器,不支持PNGalpha暂时不管通道。其文档的分析和理解规范也引起了许多烦人BUG,有时甚至让人感到绝望。本文主要讲解一些容易遇到的事情。IE6BUG,以及解决方案。一、IE6双倍边距bug使用页面上的元素float无论是向左还是向右浮动;只要元素有margin像素会使值乘以2,例如margin-left:10px”在IE6.该值将分析为20px。想解决这个问题BUG需要在加元素display:inline或display:block明确其元素类型可以解决双边距BUG二、IE6中3像素问题及解决方案当元素使用float浮动后,元素与相邻元素之间会产生3px的间隙。奇怪的是,如果右侧的容器没有设置高度3px间隙位于相邻容器内部,设定高度后跑到容器的相反侧。要解决这类BUG如果需要在同一行添加布局的元素float浮动。三、IE6中奇数宽高BUGIE6中奇数的高宽显示大小与偶数的高宽显示大小不同。问题在于奇数高宽。为了解决这些问题,我们只需要尝试定位外部位置div高宽可以写成偶数。四、IE图片链接链接下方有间隙IE图片下方会有一定的间隙,尤其是图片垂直靠近图片时。要解决这类问题,需要解决img标签定义为display:block或定义vertical-align对应属性。也可以为img写入相应的样式font-size:0五、IE6下空元素的高度BUG如果一个元素没有任何内容,在样式中设置0-19px两者之间的高度。这个元素的高度一直是19px。有四种解决方案:1.在元素的css中加入:overflow:hidden2.插入元素html注释:<!–>3.插入元素html的空白符:&nbsp;4.在元素的css中加入:font-size:0六、重复文字BUG在一些复杂的排版中,有时会出现浮动元素后面的字符clear去除元素下面。解决方案如下:1.确保所有元素都有display:inline2.在后一个元素上使用margin-right:-3px3.为浮动元素的后一个条目添加条件注释,<!–[if!IE]>xxx<![endif]–>4.在容器的后元素使用一个空白的div,为这个div指定不超过容器宽度。七、IE6中z-index失效具体BUG为了设置元素的父级元素z-index为1,然后设置子级元素z-index当它失败时,它的级别将继承父级元素的设置,导致某些级别的调整BUG。可以阅读详细的解释IE在中部情况下z-index无效的原因和解决方案结论:实际上IE6中,很多BUG可以使用解决方案display:inline、font-size:0、float解决。所以写代码的时候要记住,一旦用了float浮动增加了元素display:inline样式可以有效避免浮动造成的样式混乱。使用空DIV为了避免其对布局美观的高度影响,也可以添加font-size:很容易避免一些兼容性问题。