附上视频教程链接:P50黑马程序员web前端进阶教程,前端html5+css3+移动端项目实战(含华为新闻,b站移动端等)_哔哩哔哩_bilibili
<!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>Document</title>
<style>
/* 1.精灵图是水平方向的,盒子的尺寸等于精灵图的宽度/小人个数:1680/12=140,高度不变是140 */
.box{
width: 140px;
height: 140px;
/* 2.加入一个边框显示其区域 */
border: 1px solid #000;
/* 3.导入精灵图 */
background-image: url(./images/bg.png);
/* 5.使用动画*/
/* 逐帧动画使用step */
/* 补间动画使用Linear */
animation:
move 1s steps(12) infinite,
/* forwards,表示停留到动画最后一帧 */
/* 调整一下跑的时间,这里给10s */
run 10s forwards
;
/* 7.使用多组动画逗号(,)隔开 */
}
/* 4.定义其精灵图移动动画 */
@keyframes move {
/* 因为只有两种状态,所以使用from...to */
/* from可以省略,因为默认状态下bgp就是0,0 */
from{
background-position: 0 0;
}
/* 图片往左边水平移动,第一张到最后一张,所以x=-1680px,1680是精灵图总宽度 */
to{
background-position: -1680px 0;
}
}
/* 6.定义让盒子移动的动画(小人跑起来) */
@keyframes run {
/* 盒子从一边水平移动到另外一边,状态只有一种,所以使用from...to */
from{
transform: translateX(0);
}
to{
transform: translateX(1000px);
}
}
</style>
</head>
<body>
<div class="box"></div>
</body>
</html>