常见的浏览器兼容性问题与解决方案——CSS篇

1、不同的浏览器的标签默认的外补丁和内补丁不同

问题症状:随便写几个标签,不加样式控制的情况下,各自的margin和padding差异较大。

碰到频率:100%

解决方案:初始化CSS的默认样式,*{margin:0;padding:0}。也可以使用其他网站的初始化代码

备注:这个是最常见的也是最容易解决的一个浏览器兼容性问题。

 

2、块属性标签float后,又有横行的margin情况下,在IE6显示margin比设置的大

问题症状:常见的是IE6中后面的一块被顶到下一行。

碰到频率:90%

解决方案:在float的标签样式控制中加入display:inline;将其转化为行内属性。

 

3、设置较小高度标签,在IE6、IE7和遨游浏览器中高度超出自己设置的高度

问题症状:IE6、IE7和遨游浏览器里这个标签的高度不受控制,超出自己设置的高度。

碰到频率:60%

解决方案:给超出高度的标签设置overflow:hidden;或者设置行高line-height小于你设置的高度。

 

4、行内属性标签,设置display:block后采用float布局,又有横行的margin的情况,IE6间距bug

问题症状:IE6里的间距比超过设置的间距。

碰到频率:20%

解决方案:在display:block;后面加入display:inline;display:table;

 

5、图片默认有间距

问题症状:几个img标签放在一起的时候,有些浏览器会有默认的间距,加了margin:0;和padding:0也不起作用。

碰到频率:20%

解决方案:使用float属性为img布局。

 

6、标签最低高度设置min-height不兼容

问题症状:因为min-height本身就是一个不兼容的CSS属性,所以设置min-height时不能很好的被各个浏览器兼容。

碰到频率:20%

解决方案:如果我们需要设置一个标签的最小高度是200px,需要进行的设置为:{min-height:200px;height:auto !importtant;height:200px;overflow:visible;}

 

posted @ 2017-12-02 14:43  Z皓  阅读(1649)  评论(0编辑  收藏  举报