是什么?
精灵图也称雪碧图,就是很多张图片放在一张图片上,用户只需请求一张图片就可以拿到所有需要的图片。开发人员利用背景图的位置去显示不同位置的图片,这是前端图片优化的一种方式。
为什么?(优点)
1、可以减小图片的总大小。
2、获取全部的图片只需一次请求,可以减少http请求的次数。
缺点:
1、降低开发效率
2、维护难度加大
如何使用?
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>精灵图</title>
<style>
li {
width: 30px;
height: 30px;
background-image: url(./精灵图.gif);
background-repeat: no-repeat;
list-style-type: none;
float: left;
margin: 10px;
}
/* 清楚浮动 */
.ul1::after {
content: '';
display: block;
clear: both;
}
.ul2::after {
content: '';
display: block;
clear: both;
}
.ul1 li:nth-child(1) {
background-position: 0 0;
}
.ul1 li:nth-child(2) {
background-position: -42px 0;
}
.ul1 li:nth-child(3) {
background-position: -84px 0;
}
.ul1 li:nth-child(4) {
background-position: -126px 0;
}
.ul1 li:nth-child(5) {
background-position: -168px 0;
}
.ul1 li:nth-child(6) {
background-position: -210px 0;
}
.ul2 li:nth-child(1) {
background-position: 0 -40px;
}
.ul2 li:nth-child(2) {
background-position: -42px -40px;
}
.ul2 li:nth-child(3) {
background-position: -84px -40px;
}
.ul2 li:nth-child(4) {
background-position: -126px -40px;
}
.ul2 li:nth-child(5) {
background-position: -168px -40px;
}
.ul2 li:nth-child(6) {
background-position: -210px -40px;
}
</style>
</head>
<body>
<ul class="ul1">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<ul class="ul2">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</body>
</html>
以上就是精灵图/雪碧图的内容。
我会将自己平时项目中常见的问题以及笔试面试的知识在CSDN与大家分享,一起进步,加油。
版权声明:本文为weixin_46318413原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。