`
fuhao_987
  • 浏览: 61565 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

[转]ie6下CSS存在的BUG

阅读更多
A 双倍MARGIN
設置float的位于行首的元素[如div, ul中的li等],使用margin后,横向margin值会加倍
div {
float:left;
margin-left:10px;
display:inline; /*解决方法*/
width:420px;
height:150px;
border:1px solid red
}

浮动元素上的{display: inline;}会被忽略,事实上所有的浏览器没有呈现任何改变,包括IE。但是,它不知何故让IE停止将浮动元素的边界翻倍。因而,这个修复办法可以被 直接应用,而没有任何繁琐的隐藏方法。如果将来的一款浏览器决定对这个修复办法抱恙,只要把这个修复装入IE独用的Tan Hack里

BUG重点
这个Bug仅当浮动边界[margin]和浮动元素[float]的方向相同时出现在浮动元素和容器盒的内边缘之间,在这之后的任意有着相似边界的浮动元素不会呈现双倍边界。只有特定的浮动行的第一个浮动元素会遭遇这个Bug。像居左的情况一样,双倍边界同样神秘地显示在居右的相同方式

B. ul中li垂直间隙BUG
1. li中是图片:
ul li img{vertical-align:bottom;} /*同样适用于ff*/
2.li中是文本内容
参考 IE6 3px BUG

C. display:inline-block;
用于让<a> block后,不使用float属性就显示在一行上

inline-block的元素特点:

将对象呈递为内联对象,但是对象的内容作为块对象呈递。旁边的内联对象会被呈递在同一行内,允许空格。(准确地说,应用此特性的元素呈现为内联对象,周围元素保持在同一行,但可以设置宽度和高度地块元素的属性)

并不是所有浏览器都支持此属性,目前支持的浏览器有:Opera、Safari在IE中对内联元素使用display:inline-block,IE是不识别的,但使用display:inline-block在IE下会触发layout, 从而使内联元素拥有了display:inline-block属性的表症。从上面的这个分析,也不难理解为什么IE下,对块元素设置 display:inline-block属性无法实现inline-block的效果。这时块元素仅仅是被display:inline-block触 发了layout,而它本就是行布局,所以触发后,块元素依然还是行布局,而不会如Opera中块元素呈递为内联对象。

IE下块元素如何实现display:inline-block的效果?

有两种方法:
1、 先使用display:inline-block属性触发块元素,然后再定义display:inline,让块元素呈递为内联对象(两个display 要先后放在两个CSS声明中才有效果,这是IE的一个经典bug,如果先定义了display:inline-block,然后再将display设回 inline或block,layout不会消失)。代码如下(...为省略的其他属性内容):

div {display:inline-block;...}
div {display:inline;}


2、直接让块元素设置为内联对象呈递(设置属性display:inline),然后触发块元素的layout(如:zoom:1等)。代码如下:

div {display:inline; zoom:1;display:inline-block;...} /*推荐*/

D. IE6 3px BUG
当浮动元素与 定义宽度的非浮动元素 相邻时,这个3像素的Bug就会出现,它会偏移3像素。
同样适用于ul li 间的间隙问题
<style type="text/css">
*{margin:; padding:0;}
#t1{ background:red; width:400px; height:100px; margin:;}
.t2{ background:blue; width:200px; height:50px; float:left;}
.t3{ background:yellow;  width:100px; height:50px;}
</style>
<div id="t1">
<div class="t2">此处显示  id "t2" 的内容</div>
<div class="t3">a</div>
</div>
分享到:
评论

相关推荐

    让IE中支持css3.0效果

    但凡是前端工程师,都知道IE6,IE7,IE8不支持、或者不完全支持CSS3的属性。 CSS3 有很多很强大、绚丽的效果,比如,圆角,阴影,渐变透明,渐变背景,等等。 因为IE6时代,没有什么标准,而因为各种原因,IE6用户...

    最常见的9种IE_css_bug及fix

    最常见的9种IE_css_bug及fix

    ie6支持css3属性js插件包(不再为兼容性头疼)

    如png透明问题在IE5、IE6下无法显示出其效果,我们可能会使用CSS hack或者引入外部JavaScript来实现。譬如前面我提到过用pngfix的那个方法就是调用外部JavaScript来解决在IE5、IE6下png透明问题。当然还有更多的方法...

    css常见的bug(ie)

    自己整理出来的css bug 有兼容浏览器的bug

    IEbug、IE6页面问题

    IEbug、IE6页面问题、IE6样式问题

    CSS之IE BUG分析与解决

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

    css规范_IE bug,IE与Firefox的CSS兼容问题.....整理

    css规范_IE bug,IE与Firefox的CSS兼容问题.....整理

    解决CSS在IE与火狐下的兼容问题

    让你的CSS能兼容IE Firefox的一些技巧。解决IE一些诡异的Bug

    常见 CSS BUG 的处理

    信大家对于常见 CSS BUG 的处理已经相对比较熟悉,例如:IE6 Three Pixel Gap、IE5/6 Doubled Float-Margin Bug 等等。但时常我们也会碰到复杂的 CSS BUG 问题,所谓“复杂”实质是指触发的条件很复杂,而“BUG” 也...

    让CSS兼容IE和Firefox的技巧集合

    让CSS兼容IE和Firefox的技巧集合,有了它IE不在是bug 嘿嘿

    IE6特有bug兼容性问题整理

    结果IE6下,背景不固定了,只看到背景图片随着滚动条上下移动而移动。演示页面 要解决这个问题呢,也是有办法的,就是将fixed属性转移到html标签上就可以了。即: html{background:white url(../image/404.png) no-...

    css兼容性问题总结笔记

    1. IE6下float元素margin加倍 4 2. IE6下图片下方有空隙产生 4 3. ie6下空标签高度问题 4 4. IE6下这两个层中间有间隙 5 5. 当子元素浮动且未知高度时,怎么使父容器适应子元素的高度 5 6. 超链接访问过后hover样式...

    CSS浏览器兼容和IE中bug问题

    对于初学者来说,可以比较简单的理解和处理css中遇见的一些浏览器兼容常见问题,以及对于IE中的bug得处理等,都是个人的一个整理。

    让IE6支持css3,让 IE7、IE8 都支持CSS3

    CSS3 有很多很强大、绚丽的效果,比如,圆角,阴影,渐变透明,渐变背景,等等。 因为IE6时代,没有什么标准,而因为各种原因,IE6... 它可以让IE6,IE7,IE8 支持 CSS3特效…… 之前的 bug 一直有一个严重 bug,今天

    9个最常见IE的Bug及其fix

    9个最常见的IE6 Bug,快解决头疼的IE6吧

    IE6下CSS多类选择符优先级不起作用的bug分析及解决方法

    IE6,这个前端开发的梦魇总是在你不经意的时候给你捅一刀,在ie6环境下CSS多类选择符优先级不起作用,多么的令人气愤啊,经过测试:IE6下这种类组合的优先级不如单个类, 感兴趣的朋友可以了解下啊

    CSS IE6奇数宽度或高度的bug

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

    IE6,IE7,IE8 css bug搜集及浏览器兼容性问题解决方法汇总

    断断续续的在开发过程中收集了好多的bug以及其解决的办法,都在这个文章里面记录下来了!希望对web前端开发有所帮助,也希望大家能在留言里面跟进自己发现的ie6 7 8bug和解决办法

    ie6兼容bug总结

    收集总结了ie6和其他浏览器下的兼容性问题

    Web-前端html+css从入门到精通 168. IE低版本常见BUG.zip

    Web-前端html+css从入门到精通 168. IE低版本常见BUG.zip

Global site tag (gtag.js) - Google Analytics