10精灵图 兼容性问题 常见的css bug

10精灵图 兼容性问题 常见的css bug

一、精灵图

精灵图

由多张小图构成的一张图案,英文名是sprite,又称雪碧图

实现步骤

实现一个指定大小的盒子,来装图片
将精灵图设置为盒子的背景
通过background-position调整背景图的位置

精灵图的核心技术就是background-position

优点

- 减少访问次数
- 占用内存少
- 文件数量少,减少命名

缺点

- 步骤繁琐
- 增删图标

二、兼容性

兼容性

同一个页面在不同的浏览器或者版本里面显示的效果不一致

处理兼容性问题的方法

css3-私有前缀

代表浏览器		前缀		浏览器内核
欧朋				-o-			persto
IE			 	-ms-	 	trident
火狐				-moz-		gecko
谷歌、safari		-webkit		webkit

三、常见的css bug

图片3px问题

- 给图片设置垂直对齐
	vertical-align:top;
	vertical-align:middle;
	vertical-align:bottom;

行内块元素与元素之间会有空白

- 给元素设置浮动
	float:left;
	float:right;

- 去掉元素之间的空白和换行

表单元素在垂直方向上没有对齐

- 给元素设置浮动
	float:left;
	float:right;

- 给元素设置处置对齐
	vertical-align:top;
	vertical-align:middle;
	vertical-align:bottom;

图片被a包裹后,在低版本浏览器会有边框

- 给图片设置
	border:0;

图片是png-24格式的,在低版本浏览器显示成不透明的效果

- 将图片保存为png-8格式

- 将图片保存为gif格式

鼠标为手型的时候,在高版本只认识pointer

- 同时将低版本很高版本能识别的代码都写上
	cursor:hand;
	cursor:pointer;

子元素设置垂直方向的外边距,会把外边距作用在父元素身上(margin粘连问题)

- 给父元素设置一个透明边框
	border:1px solid transprant;

- 给父元素设置超出隐藏
	overflow:hidden;

- 给父元素设置padding来调节父元素与子元素之间的间隙
	padding会撑大盒子
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值