其他分享
首页 > 其他分享> > 前端学习之------浏览器兼容(CSS)

前端学习之------浏览器兼容(CSS)

作者:互联网

浏览器兼容指的是:由于各浏览器使用了不同的内核,使得网页在各种浏览器上的显示效果不一致,做好浏览器兼容,才能够让网站在不同浏览器上正常显示

CSS方面:

1、不同浏览器的标签默认的内外边距不同,所以,可以全部初始化为0

*{
	margin: 0;
	padding: 0;
}

2、图片<img>和<a>标签在IE9中会有边框,解决办法:

img,a{
	border: none;
}

3、margin边距重叠,取最大值,舍弃小值

解决办法:尽可能使用padding;或者添加父元素,并设置overflow:hidden;

4、IE6及更低版本中,部分块级元素有默认高度,解决办法:

.box{
	font-size: 0;
}

5、<a>标签蓝色边框,解决办法:

a{
	outline: none;
}

6、IE6不支持min-height属性,解决办法:

.box{
	/* _height: 200px;在IE6显示正常,但是不符合W3C标准 */
	min-height: 200px;
	_height: 200px;
	overflow: visible;
}

7、IE9以下浏览器不能使用opacity,解决办法:

Firefox/Chrome/Safari/Opera浏览器使用opacity,IE浏览器使用filter

8、IE6、7不支持display:inline-block,解决办法:

.box{
	display: inline-block;
	*display:inline;
}

9、cursor兼容问题,解决办法:

.box{
	cursor: pointer;
}

10、IE6、7中图片<img>标签与文字放一起时,line-height失效问题,解决办法:

<img>和文字都设置float

11、a标签伪元素状态添加顺序不同,会导致链接显示效果不同,浏览器解释CSS时遵循“就近原则”

a:link{
	color: red; /* 还未访问的状态 */
}
a:visited{
	color: green; /* 已访问的状态 */
}
a:hover{			
	color: grey; /* 鼠标在连接上的状态 */
}
a:active{
	color: blue; /* 激活链接时的状态 */
}

12、IE6、7图片下面有空隙的问题,解决办法:

img{
	display: block;
}

13、IE中<li>标签在指定高度后,出现排版错误,解决办法:

设置line-height值

14、<ul>或<li>设置float后,显示在<div>外,解决办法:

<div>
	<ul>
		<li style="float:left;"></li>
		<li style="float:left;"></li>
	</ul>
     <div style="clear: both;"></div>
</div>

15、<ul>设置float之后,在IE中margin值变大,解决办法:

ul{
	display: inline;
}
li{
	list-style-position: outside;
}

16、在Chrome中,字体不能小于10px,解决办法:

.box{
	font-size: 12px;
	transform: scale(0.5);
}

  

标签:box,解决办法,浏览器,IE6,------,height,display,CSS
来源: https://www.cnblogs.com/zhaoyingzhen/p/16655759.html