CSS animation-timing-function 属性中的 steps() 与 step-start,step-end
steps() 设置间隔参数,可以实现分步过渡
第一个参数指定了时间函数中的间隔数量(必须是正整数)
第二个参数可选,接受start和end两个值,指定在每个间隔的起点或是终点发生阶跃变化,默认为end。
steps() 的实现方法:
.heart{background-image: url('images/heart-sprite.png');-webkit-animation: animate 1s steps(28) infinite;
animation: animate 1s steps(28) infinite;
}
.star{background-image: url('images/star-sprite.png');-webkit-animation: animate 1s steps(28) infinite;
animation: animate 1s steps(28) infinite;
}
@keyframes animate {from {background-position: 0 0;
}
to {background-position: -2800px 0;
}
}

step-start 可以实现与 steps() 效果相同的动画
step-start等同于steps(10,start)动画分成10步,动画执行时为开始左侧端点的部分为开始。step-end等同于steps(10,end)动画分成10步,动画执行时以结尾端点为开始,默认值为end。
step-start 的实现方法:
.heartTwo{background-image: url('images/heart-sprite.png');-webkit-animation: animateTwo 1s infinite step-start;
animation: animateTwo 1s infinite step-start;
}
.starTwo{background-image: url('images/star-sprite.png');-webkit-animation: animateTwo 1s infinite step-start;
animation: animateTwo 1s infinite step-start;
}
@keyframes animateTwo {0% { background-position: 0 0; }3.4% { background-position: -100px 0; }6.8% { background-position: -200px 0; }10.2%{ background-position: -300px 0; }13.6%{ background-position: -400px 0; }17% { background-position: -500px 0; }20.4%{ background-position: -600px 0; }23.8%{ background-position: -700px 0; }27.2%{ background-position: -800px 0; }30.6%{ background-position: -900px 0; }34% { background-position: -1000px 0; }37.4%{ background-position: -1100px 0; }40.8%{ background-position: -1200px 0; }44.2%{ background-position: -1300px 0; }47.6%{ background-position: -1400px 0; }51% { background-position: -1500px 0; }54.4%{ background-position: -1600px 0; }57.8%{ background-position: -1700px 0; }61.2%{ background-position: -1800px 0; }64.6%{ background-position: -1900px 0; }68% { background-position: -2000px 0; }71.4%{ background-position: -2100px 0; }74.8%{ background-position: -2200px 0; }78.2%{ background-position: -2300px 0; }81.6%{ background-position: -2400px 0; }85% { background-position: -2500px 0; }88.4%{ background-position: -2600px 0; }91.8%{ background-position: -2700px 0; }95.2%{ background-position: -2800px 0; }100% { background-position: 0 0; }}
steps(1,start) 等同于 step-start,steps(1,end) 等同于 step-end
动画帧数在线生成:http://tid.tenpay.com/labs/css3_keyframes_calculator.html
CSS animation-timing-function 属性中的 steps() 与 step-start,step-end的更多相关文章
- CSS3 animation属性中的steps实现GIF动图(逐帧动画)
相信 animation 大家都用过很多,知道是 CSS3做动画用的.而我自己就只会在 X/Y轴 上做位移旋转,使用 animation-timing-function 规定动画的速度曲线,常用到的 ...
- CSS魔法堂:更丰富的前端动效by CSS Animation
前言 在<CSS魔法堂:Transition就这么好玩>中我们了解到对于简单的补间动画,我们可以通过transition实现.那到底多简单的动画适合用transtion来实现呢?答案就是 ...
- js中Function引用类型中一些常见且有用的方法和属性
Function类型 函数由于是Function类型的一个实例,所以函数名就是一个指向函数对象的指针,不会与某个函数死死的连接在一起,这也导致了js中没有真正的重载,但好处是,函数对象可以作为另一个函 ...
- [1.1W字] 复习: CSS 9个背景属性&6种渐变函数, 学会可以手写实现AI中强大的"任意渐变"! #Archives009
Title/ CSS Background&Gradient完全指南 #Archives009 序: 关于 background 属性, 了解点CSS的人总会知道个大概. 但是你肯定多半还有点 ...
- CSS——简写属性(在padding和margin这样的简写属性中,值赋值的顺序是top、right、bottom、left)
/* 在padding和margin这样的简写属性中,值赋值的顺序是top.right.bottom.left. 它们还有其他简写方式,例如给padding两个值,则第一个值表示top/bottom, ...
- 利用 CSS animation 和 CSS sprite 制作动画
CSS3 大大强化了制作动画的能力,但是如果要做出图案比较复杂的动画,选择 GIF 依然是一个不错的选择.今天给大家介绍一个使用 CSS animation 配合雪碧图(CSS sprite)来制作动 ...
- 脚本化CSS类-HTML5 classList属性
HTML元素可以有多个CSS类名,class属性保存了一个用空格隔开的类名列表.标识符class在JavaScript中是保留字,所以在JavaScript中可以用className. //如下代码设 ...
- CSS Animation triggers text rendering change in Safari
薄荷新首页上周五内测,花哥反馈在 MacBook Safari 浏览器下 鼠标移动到第一个商品的时候后面几个商品的文字会加粗.这是什么鬼??? 待我回到家打开笔记本,鼠标蹭蹭蹭的发现问题远不止如此: ...
- No.6 - 利用 CSS animation 制作一个炫酷的 Slider
*{ margin:; padding:; } div{ margin: auto; width: 800px; height: 681px; position: relative; overflow ...
随机推荐
- Nastya Studies Informatics
Nastya Studies Informatics time limit per test 1 second memory limit per test 256 megabytes in ...
- MongoDB_语法命令
可以通过MongoDB shell 来连接MongoDB服务: ./mongo 进入交互 数据库-->集合-->文档 几个文档就组成了集合,可以设置固定大小的集合,集合就会有过期机制, ...
- 虚拟机centos 里tomcat的端口映射到主机 Windows里面
- Vue1.x 迁移 Vue2.x(项目进行不断修改)
一.$dispatch 和 $broadcast 已经被弃用. 请使用更多简明清晰的组件间通信和更好的状态管理方案,如:Vuex 这些方法的最常见用途之一是父子组件的相互通信.在这些情况下,你可以使用 ...
- Effective Java P2 Item1 Consider static factory methods instead of constructors
获得一个类的实例的传统方法是公共的构造方法,还可以提供一个公共的静态工厂方法(一个返回值为该类实例的简单静态方法), 例如Boolean(boolean 的封装类) public static Boo ...
- 【深入Java虚拟机】之六:Java语法糖
语法糖(Syntactic Sugar),也称糖衣语法,是由英国计算机学家Peter.J.Landin发明的一个术语,指在计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使 ...
- Unix操作系统LD_PRELOAD简介
http://blog.csdn.net/ieearth/article/details/49952047 Unix操作系统的动态链接库的知识中,这个功能主要就是用来有选择性的载入Unix操作系统不同 ...
- [React] Create and import React components with Markdown using MDXC
In this lesson I demonstrate how to use the library MDXC to create and import React components with ...
- odoo写邮件添加收件人
在任何可以写消息的地方点击鼠标 或者回复消息 写消息的框会聚焦并变大 点击撰写框右上角的弹出窗图标 弹出完整的撰写消息窗口 在红色的地方添加收件 ...
- C语言printf()函数具体解释和安全隐患
一.问题描写叙述 二.进一步说明 请细致注意看,有例如以下奇怪的现象 int a=5; floatx=a; //这里转换是没有问题的.%f打印x是 5.000000 printf("%d\n ...