常遇到的浏览器兼容性问题

1. ie6双倍边距

在使用了float的情况下,不管是向左还是向右都会出现双倍,最简单的解决方法就是用display:inline;加到css里面去。

2. 文字本身的大小不兼容。

同样是font-size:14px的宋体文字,在不同浏览器下占的空间是不一样的,ie下实际占高16px,下留白3px,ff下实际占高17px,上留白1px,下留白3px,opera下就更不一样了。

解决方案:给文字设定 line-height 。确保所有文字都有默认的 line-height 值。这点很重要,在高度上我们不能容忍1px 的差异。

3. ff下容器高度限定,即容器定义了height之后,容器边框的外形就确定了,不会被内容撑大,而ie下是会被内容撑大,高度限定失效。所以不要轻易给容器定义height。

4. 内容撑破容器问题。

如果float 容器未定义宽度,ff下内容会尽可能撑开容器宽度,ie下则会优先考虑内容折行。所以,内容可能撑破的浮动容器需要定义width。

5. 浮动的清除,ff下不清除浮动是不行的。

6. mirrormargin bug

ie6下,当外层元素内有float元素时,外层元素如定义margin-top:14px,将自动生成margin-bottom:14px。padding也会出现类似问题。解决方案:外层元素需要设定border 或 设定float。

7. 吞吃现象。

ie6下,上下两个div,上面的div设置背景,却发现下面没有设置背景的div 也有了背景,这就是吞吃现象。对应上面的背景吞吃现象,还有滚动下边框缺失的现象。

解决方案:使用zoom:1。这个zoom好象是专门为解决ie6 bug而生的。

猜你喜欢

转载自blog.csdn.net/diypp2012/article/details/45893039