`

IE6中的常见BUG与相应的解决办法

阅读更多

开发前端的同学一定都知道,IE6是兼容BUG最多的浏览器,它不支持PNG alpha通道暂且不论。其文档的解析理解规范也引起了诸多恼人的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中奇数宽高的BUG

IE6中奇数的高宽显示大小与偶数高宽显示大小存在一定的不同。其中要问题是出在奇数高宽上。要解决此类问题,只需要尽量将外部定位的div高宽写成偶数即可。

四、IE6中图片链接的下方有间隙

IE6中图片的下方会存在一定的间隙,尤其在图片垂直挨着图片的时候,即可看到这样的间隙。要解决此类问题,需要将img标签定义为display:block 或定义vertical-align对应的属性。也可以为img对应的样式写入font-size:0

五、IE6下空元素的高度BUG

如果一个元素中没有任何内容,当在样式中为这个元素设置了0-19px之间的高度时。此元素的高度始终为19px。

解决的方法有四种:

1.在元素的css中加入:overflow:hidden

2.在元素中插入html注释:<!– >

3.在元素中插入html的空白符:&nbsp;

4.在元素的css中加入:font-size:0

六、重复文字的BUG

在某些比较复杂的排版中,有时候浮动元素的最后一些字符会出现在clear清除元素的下面。

解决方法如下:

1.确保元素都带有display:inline

2.在最后一个元素上使用“margin-right:-3px

3.为浮动元素的最后一个条目加上条件注释,<!–[if !IE]>xxx<![endif]–>

4.在容器的最后元素使用一个空白的div,为这个div指定不超过容器的宽度。

七、IE6中 z-index失效

具体BUG为,元素的父级元素设置的z-index为1,那么其子级元素再设置z-index时会失效,其层级会继承父级元素的设置,造成某些层级调整上的BUG。详细解释可以阅读IE6中部分情况下z-index无效的原因,以及解决办法

结语:实际上IE6中,很多BUG的解决方法都可以使用display:inline、font-size:0、float解决。因此我们在书写代码时要记住,一旦使用了float浮动,就为元素增加一个display:inline样式,可以有效的避免浮动造成的样式错乱问题。使用空DIV时,为了避免其高度影响布局美观,也可以为其加上font-size:0 这样就很容易避免一些兼容上的问题。

分享到:
评论

相关推荐

    9个最常见IE的Bug及其fix

    在本文中,我们将深入探讨IE6中最为常见的九个Bug,并提供相应的解决方案,帮助Web开发者们解决这个曾经令人头疼的问题。 ### 1. 居中布局问题 在CSS布局中,将一个元素水平居中是最基本的需求之一。通常,通过...

    最常见的9种IE_css_bug及fix

    ### 最常见的9种IE_css_bug及fix:深入解析与解决方案 #### 1. 居中布局问题 在Web开发中,将元素居中是极为常见的需求。通过设置`margin: auto;`通常能够轻松实现这一目标,但在IE6中,这种方法却会遇到问题。...

    IE6常见bug附解决方法

    ### IE6常见bug及其解决方法 #### 一、IE6怪异解析之padding与border算入宽高 **问题描述**: 在没有指定文档类型声明的情况下,IE6会使用其特有的“怪异模式”(Quirks Mode)来解析页面布局。在这种模式下,元素...

    css_bug与解决方法

    描述详述:本文旨在探讨并提供解决各种浏览器中的CSS bug的方法与技巧。在Web开发中,CSS(层叠样式表)是实现网页美观设计的关键技术之一,但不同浏览器对CSS的支持程度和解析方式存在差异,这往往导致CSS bug的...

    IE6,IE7,FF等浏览器不兼容原因及解决办法

    ### IE6、IE7、Firefox等浏览器不兼容的原因及解决办法 #### 一、引言 随着Web技术的发展,浏览器的兼容性问题一直是前端开发者面临的重要挑战之一。尤其是在早期的Web开发时代,如IE6、IE7以及较早版本的Firefox等...

    常见 CSS BUG 的处理

    **IE5/6 Doubled Float-Margin Bug**:在 IE5 和 IE6 中,当一个浮动元素紧挨着另一个设置了外边距的元素时,可能会出现外边距加倍的问题。 **解决方法**: - 使用 `display: inline` 来让元素表现得像内联元素一样...

    css样式BUG大全

    本文将针对常见的CSS样式BUG进行详细解析,并提出相应的解决方案。 #### 二、垂直居中问题 **问题描述:** 在某些情况下,尝试使一个元素在其父容器内垂直居中时,如果使用`vertical-align: middle;`或设置`line-...

    IE6,7,8下多余字符bug

    解决“IE6,7,8下多余字符bug”的常见方法可能包括: 1. **代码修正**:检查HTML、CSS和JavaScript代码,确保它们符合IE6-8的语法标准,避免使用这些浏览器不支持的特性。 2. **条件注释**:利用IE的条件注释来为...

    网页排版IE6兼容性问题修改方法

    为了解决这些问题,我们需要深入理解IE6的特性,并采取相应的修复策略。 1. **浮动与清除** IE6对浮动元素的支持存在缺陷,可能会导致浮动元素不正常地重叠或溢出。解决办法是为浮动元素的父级添加`clearfix`类,...

    JEECMS的新浪图集在IE9、10不能显示大图片BUG的解决方法

    **标题:“JEECMS的新浪图集在IE9、10不能显示大图片BUG的解决方法”** 在本文中,我们将深入探讨一个针对JEECMS(Java Enterprise Edition Content Management System)系统的常见问题,即新浪图集在Internet ...

    IE6浮动换行bug比较实用简单解决方法

    通过上述方法,我们可以较为简单地解决IE6的浮动换行bug,避免中间列内容跑到下方,确保布局在IE6中也能按照预期显示。尽管这不是最完美的解决方案,但在许多实际应用中,它已足够解决大部分的布局问题。当然,随着...

    IE6下兼容性常见的几个问题与解决方法

    本文主要探讨在IE6环境下遇到的一些典型问题及相应的解决策略。 首先,常见问题一是关于父元素宽度被撑开。在IE6中,内容可能会超出父元素预设的宽度和高度。例如,一个设置为400px宽的.box容器内有两个浮动元素....

    ie6,ie7兼容性总结

    本文将详细介绍在IE6、IE7环境下常见的兼容性问题及其解决方案。 #### 二、关键兼容性问题及解决方案 ##### 1. 文字本身的大小不兼容 **问题描述**:在不同的浏览器中,即使是同样大小的文字(例如14px的宋体),...

    IE6,IE7,IE8兼容性问题

    本文将针对IE6, IE7, IE8中常见的兼容性问题进行深入探讨,并提供相应的解决方案。 #### 二、CSS兼容性问题及解决方案 ##### 2.1 div的垂直居中问题 **问题描述**:在某些情况下,开发者希望将一个元素在其父容器...

Global site tag (gtag.js) - Google Analytics