`

IE6中CSS常见BUG全集及解决方案

阅读更多

IE6双倍边距bug

当 页面内有多个连续浮动时,如本页的图标列表是采用左浮动,此时设置li的左侧margin值时,在最左侧呈现双倍情况。如外边距设置为10px, 而左侧则呈现出20px,解决它的方法是在浮动元素上加上display:inline;的样式,这样就可避免双倍边距bug。

 

3像素问题及解决办法

当使用float浮动容器后,在IE6下会产生3px的空隙,有意思的是右侧容器没设置高度时3px在右侧容器内部,当设定高度后又跑到容器的左侧了,所以对布局精度要求高的话,请参考例29、31的解决方法。

 

当子元素浮动且未知高度时,怎么使父容器适应子元素的高度?

这 种情况可在父窗口加上 overflow:auto;zoom:1;这两个样式属性,overflow:auto;是让父容器来自适应内部容器的高度,zoom:1;是为了兼容 IE6而使用的CSS HACK。zoom:1;通不过W3C的验证,这也是遗憾的一点,幸好IE支持<!--[if IE]>这种写法,可以专门针对IE来写单独的样式,所以可以把这个属性写在页面内的<!--[if IE]>中,这样应该可以通过验证了。

 

超链接访问过后hover样式就不出现的问题

被点击访问过的超链接样式不在具有hover和active了,很多人应该都遇到过这个问题,解决方法是改变CSS属性的排列顺序: L-V-H-A
a:link {color: #1f3a87; text-decoration:none;}
a:visited {color: #83006f;text-decoration:none;}
a:hover {color: #bc2931; text-decoration:underline;}
a:active {color: #bc2931;}

IE6下这两个层中间怎么有间隙
这个IE的3PX BUG也是经常出现的,解决的办法是给.right也同样浮动 float:left 或者相对IE6定义.left margin-right:-3px;

IE6文字溢出BUG
说明:注释造成文字溢出是IE的BUG。

一个空格引发CSS失效
这段代码对<p>的首字符样式定义在IE6上看是没有效果的(IE7没测试),而在p:first-letter和{font- size:300%}加上空格,也就是p:first-letter {font-size:300%}后,显示就正常了。但是同样的代码,在FireFox下看是正常的。按道理说,p:first- letter{font-size:300%}的写法是没错的。那么问题出在哪里呢?答案是伪类中的连字符"-"。IE有个BUG,在处理伪类时,如果伪 类的名称中带有连字符"-",伪类名称后面就得跟一个空格,不然样式的定义就无效。而在FF中,加不加空格都可以正常处理。

IE6中奇数宽高的BUG
IE6还有奇数宽高的bug,解决方案就是将外部相对定位的div宽度改成偶数。

IE6下为什么图片下方有空隙产生
解决这个BUG的方法也有很多,可以是改变html的排版,或者定义img 为display:block
或者定义vertical-align属性值为vertical-align:top | bottom |middle |text-bottom
还可以设置父容器的字体大小为零,font-size:0

 

ie6下空标签高度问题
一个空div如果高度设置为0到19px,IE6下高度默认始终19PX。
例如:
.c{background-color:#f00;height:0px;/*给定任何小于20px的高度 */}
<div class="c"></div>

如果不让它默认为19PX。而是0PX的话
解决方法有3种:
1.css里面加上overflow:hidden;
2.div里面加上注释,
<div class="c"><!– –></div>
3.css里面加上line-height:0;然后div里面加上#nbsp;,
<div class="c">&nbsp;</div>(#换成&)

修正重复文字bug

复杂的布局可以触发在浮动元素的最后一些字符可能出现在出现在清除元素下面的bug。这里有几个解决方法,有些是完美的,但是做一些反复试验也是必须的:

  • 确保所有的元素使用”display:inline;”
  • 在最后一个元素上使用一个”margin-right:-3px;”
  • # 为浮动元素的最后一个条目使用一个条件注释,比如:
    <!–[if !IE]>Put your commentary in here…<![endif]–>
  • 在容器的最后元素使用一个空的div(它也有必要设置宽度为90%或类似宽度。)





【IE6的疯狂之一】IE6中奇数宽高的BUG:http://www.css88.com/archives/1725

【IE6的疯狂之二】IE6中PNG Alpha透明:http://www.css88.com/archives/577

【IE6的疯狂之三】IE6 3像素BUG的实例:http://www.css88.com/archives/117

【IE6的疯狂之四】IE6文字溢出BUG:http://www.css88.com/archives/253

【IE6的疯狂之五】div遮盖select的解决方案:http://www.css88.com/archives/545

【IE6的疯狂之六】li在IE中底部3像素的BUG(增加浮动解决问题):http://www.css88.com/archives/421

【IE6的疯狂之七】样式中文注释后引发失效:http://www.css88.com/archives/726

【IE6的疯狂之八】链接伪类(:hover)CSS背景图片有闪动BUG:http://www.css88.com/archives/744

【IE6的疯狂之九】li在IE中底部空行的BUG:http://www.css88.com/archives/1111

【IE6的疯狂之十】父级使用padding后,子元素绝对定位的BUGhttp://www.css88.com/archives/1584

【IE6的疯狂之十一】!important在IE6下的一个BUG:http://www.css88.com/archives/1716

【IE6的疯狂之十二】一个display:none引起的3像素的BUG:http://www.css88.com/archives/1797

【IE6的疯狂之十三】IE6下使用滤镜后链接不能点击的BUG:http://www.css88.com/archives/2916

分享到:
评论

相关推荐

    精通CSS高级Web标准解决方案-包含源码(高清PDF中文版)

    之后本书用两章讨论招数、过滤器、bug和bug修复,最后由Simon Collison和Cameron Moll两位杰出的CSS设计人员,将书中讨论的许多技术组合起来,给出了两个实例研究。本书还集中介绍了现实的浏览器问题,是弥补CSS知识...

    CSS之IE BUG分析与解决

    1 在IE6中,设定height为固定值时,当内容高于此设定值时,div框会自动扩展,而在IE7、IE8与firfox中div高度为固定值,不会扩展。Width同理。 标准 IE6 2 当设定min-height时,在标准浏览器中,表现为与IE6设定固定...

    CSS优先级和!important与IE6的BUG讨论及解决方案

    important属性解决了一个样式优先级的问题,而且是支持ie6的,这是为什么呢?到底ie6支不支持!important呢? 首先我们来看看!important这个属性的作用:!important是用来提升样式优先级的,我们知道样式是有优先级的...

    IE CSS Bug及解决方案参考手册

    而在这之中,最让人头痛的当数IE,特别是IE6。搞定了IE6,基本也就能称霸半个江山了。搞定了IE,也相当于占领了7、80%的领地。你想做一个统治页面兼容的主么?反正我是想的。 问题 浏览器 DEMO 解决方法 ...

    CSS IE6奇数宽度或高度的bug

    IE6还有奇数宽度的bug,解决方案就是将外部相对定位的div宽度改成偶数。查看源码: CSS代码 #out { width: 609px;/*这里宽度为奇数,bug就出现了!!改成偶数就OK了*/ height: 300px; position: relative; ...

    CSS兼容IE和Firefox的技巧集合

    CSS兼容IE和Firefox的技巧集合,很多常见的bug解决方案!

    IE6 fixed的完美解决方案

    第一种方法:纯CSS 目前网上有的比较多的是这种解决方案(纯CSS): 代码如下: html{overflow:hidden;} body{height:100%;overflow:auto;} #rightform form{position:absolute;right:30px;top50px;} 这个方法有一个...

    CSS图片下面有间隙的6种解决方案

    在进行页面的DIV+CSS排版时,遇到IE6(当然有时Firefox下也会偶遇)浏览器中的图片元素img下出现多余空白的问题绝对是常见的对於 该问题的解决方法也是「见机行事」,根据原因的不同要用不同的解决方法,这里把解决...

    目前比较全面的浏览器CSS BUG兼容汇总

    对于web2.0的过度,请尽量用xhtml格式写代码,而且DOCTYPE 影响 CSS 处理,作为W3C的标准,一定要加 DOCTYPE声明. 其它请参考:CSS hack 针对IE6,IE7,firefox显示不同效果 1.div的... 解决方案是在这个div里面加上displa

    div CSS技巧

    这是一个ie6都存在的bug。解决方案是在这个div里面加上display:inline; 例如: ”imfloat”&gt; 相应的css为 #IamFloat{ float:left; margin:5px;/*IE下理解为10px*/ display:inline;/*IE下再理解为5px*/}

    css浏览器兼容性前端人员的必备

    这是一个ie6都存在的bug。 解决方案是在这个div里面加上display:inline; 例如: ”imfloat”&gt; 相应的css为 #IamFloat { float:left; margin:5px;/*IE下理解为10px*/ display:inline;/*IE下再理解为5px*/ }

    链接伪类(:hover)CSS背景图片有闪动BUG的解决方法

    例如: CSS代码 a:hover{background:url(imagepath)} 常用的解决方案: 在页面底部添加以下IE6专用代码,让IE6缓存CSS背景图片至本地,这样a:hover时IE6就不会再重新向服务器请求加载背景图片了。 XML/HTML代码 ...

    IE6PNG:解决IE6不支持PNG的方法搜集

    IE6 PNG透明方案搜集“珍惜生命,远离IE6”,IE6中的bug令很多Web前端开发人员实为头疼,因此不知道烧了多少脑细胞,在众多的Bug中最令人抓狂的就是IE对png图片的不支持,导致设计师和重构师放弃了很多很炫的效果,...

    CSS多浏览器兼容性(IE和Firefox)技巧大全推荐

    对于web2.0的过度,请尽量用xhtml格式写代码,而且DOCTYPE 影响 CSS 处理,作为W3C的...这是一个ie6都存在的bug。解决方案是在这个div里面加上display:inline; 例如: 复制代码代码如下: &lt;#div id=”imfloat”&gt; 相

    CSS 浏览器兼容问题整理大全(比较全)

    从网上收集了IE7,6与Fireofx的兼容性处理方法并整理了一下.对于web2.0的过度,请尽量用xhtml格式写代码,而且DOCTYPE 影响 CSS 处理,作为W3C的标准,一定要加 DOCTYPE声名....解决方案是在这个div里面加上display:inlin

    图片延迟加载显示代码Jquery.LazyLoad.js改良版

    从网上下载来的版本多多少少都有些BUG,尤其是加载后在IE6和IE7下图片闪动是个大问题,在网上查了很久,也没有找到相关的解决方案。没解决方案,就得发挥咱DIY的精神,自己想法解决,分析了BUG,理了理思路,结合前...

    ASP.NET学习笔记

    三、常用的CSS BUG解决方法与技巧 四、CSS常用的一些小技巧 五、firefox无法显示背景图片:解决方案 ASP.NET 一、 控件连接数据库 二. 从excel导入数据到数据库 比较 一、Web Application Projects和Web Site...

    CSS怎么隐藏滚动条(三种方法)

    xhtml中隐藏滚动条在用ie6浏览有框架的xhtml页面的时候,默认会水平和垂直滚动条会一起出现,这是ie6的一个bug,在firefox上是正常的,出现的原因是其对XHTML 1.0 transitional doctype的解释缺陷.对于这个bug一般有...

Global site tag (gtag.js) - Google Analytics