CSS3中的@keyframes关键帧动画的选择器绑定


Posted in HTML / CSS onJune 13, 2016

在css3中,我们可以通过@keyframes创建关键帧动画效果。我们需要将@keyframes绑定到选择器中,否则不会有效果出现。同时,我们还需定义动画时长和动画名称

语法

CSS Code复制内容到剪贴板
  1. @keyframes animationname {keyframes-selector {css-styles;}}  

描述
animationname 必需。定义动画的名称。
keyframes-selector 必需。动画时长的百分比。

在css3中,我们以百分比来规定改变发生的时间,或者通过关键词 "from" 和 "to",等价于 0% 和 100%。其中,0% 是动画的开始时间,100% 动画的结束时间。

Keyframe选择器
让我们在@keyframes中添加一些动画规则:

CSS Code复制内容到剪贴板
  1. @keyframes sunrise {   
  2.    0% {   
  3.       bottombottom: 0;   
  4.       left340px;   
  5.       background#f00;   
  6.    }   
  7.   
  8.    33% {   
  9.       bottombottom340px;   
  10.       left340px;   
  11.       background#ffd630;   
  12.    }   
  13.   
  14.    66% {   
  15.       bottombottom340px;   
  16.       left40px;   
  17.       background#ffd630;   
  18.    }   
  19.   
  20.    100% {   
  21.       bottombottom: 0;   
  22.       left40px;   
  23.       background#f00;   
  24.    }   
  25. }  

通过添加这些新的动画规则,我们引入了keyframe选择器。在上述示例代码中,0%, 33%, 66%, 以及100%即为keyframe选择器。其中,0%和100%可以使用”from”和”to”来代替。
示例中的四套动画规则表达的是这个动画元素的四种状态(四个关键帧),以及处于这四种状态中时的样式。那些没有定义的状态(比如,从34%到65%)则组成了这些已定义的状态间的过渡状态。
尽管规范还在修改中,有一些规则用户还是应该遵守。例如,keyframes的书写顺序并不重要,它们会按百分数的升序播放。因此,如果你把”to”关键帧放在”from”关键帧之前,动画的播放并不会有改变。除此以外,如果你没有指定to或者from或者对应的百分数,浏览器会自动加上。所以,@keyframes的语法并不符合一般CSS语法的层叠覆盖规则。

HTML / CSS 相关文章推荐
基于css3实现漂亮便签样式
Mar 18 HTML / CSS
css3 仿写阿里云水纹效果的示例代码
Feb 10 HTML / CSS
css3通过scale()、rotate()实现放大、旋转
Mar 19 HTML / CSS
使用HTML5 Canvas API中的clip()方法裁剪区域图像
Mar 25 HTML / CSS
浅谈pc和移动端的响应式的使用
Jan 03 HTML / CSS
利用HTML5中Geolocation获取地理位置调用Google Map API在Google Map上定位
Jan 23 HTML / CSS
HTML5梦幻之旅——炫丽的流星雨效果实现过程
Aug 06 HTML / CSS
html5 video标签屏蔽右键视频另存为的js代码
Nov 12 HTML / CSS
HTML5中原生的右键菜单创建方法
Jun 28 HTML / CSS
HTML5 Canvas 实现圆形进度条并显示数字百分比效果示例
Aug 18 HTML / CSS
使用HTML5做的导航条详细步骤
Oct 19 HTML / CSS
html+css实现文字折叠特效实例
Jun 02 HTML / CSS
实例讲解CSS3中的box-flex弹性盒属性布局
Jun 09 #HTML / CSS
详解CSS3的图层阴影和文字阴影效果使用
Jun 09 #HTML / CSS
CSS3制作漂亮的照片墙的实现代码
Jun 08 #HTML / CSS
使用CSS3中的calc()属性来以算式表达尺寸数值
Jun 06 #HTML / CSS
浅析css3中matrix函数的使用
Jun 06 #HTML / CSS
CSS3 animation实现逐帧动画效果
Jun 02 #HTML / CSS
利用CSS3的线性渐变linear-gradient制作边框的示例
Jun 02 #HTML / CSS
You might like
php入门学习知识点一 PHP与MYSql连接与查询
2011/07/14 PHP
解析mysql 表中的碎片产生原因以及清理
2013/06/22 PHP
mysql_escape_string()函数用法分析
2016/04/25 PHP
PHP数据库操作四:mongodb用法分析
2017/08/16 PHP
Laravel Intervention/image图片处理扩展包的安装、使用与可能遇到的坑详解
2017/11/14 PHP
Ecshop 后台添加新功能栏目及管理权限设置教程
2017/11/21 PHP
PHP面向对象五大原则之依赖倒置原则(DIP)详解
2018/04/08 PHP
JavaScript语句可以不以;结尾的烦恼
2007/03/08 Javascript
浅析js封装和作用域
2013/07/09 Javascript
三种动态加载js的jquery实例代码另附去除js方法
2014/04/30 Javascript
JavaScript使用位运算符判断奇数和偶数的方法
2015/06/01 Javascript
JavaScript的RequireJS库入门指南
2015/07/01 Javascript
微信小程序 教程之WXML
2016/10/18 Javascript
AngularJs基于角色的前端访问控制的实现
2016/11/07 Javascript
微信小程序 两种滑动方式(横向滑动,竖向滑动)详细及实例代码
2017/01/13 Javascript
微信小程序自定义模态对话框实例详解
2017/08/16 Javascript
详解html-webpack-plugin用法全解
2018/01/22 Javascript
Node.js 获取微信JS-SDK CONFIG的方法示例
2019/05/21 Javascript
JavaScript多种滤镜算法实现代码实例
2019/12/10 Javascript
JavaScript中变量提升机制示例详解
2019/12/27 Javascript
JavaScript内置对象之Array的使用小结
2020/05/12 Javascript
Python使用matplotlib绘制三维图形示例
2018/08/25 Python
对PyQt5的输入对话框使用(QInputDialog)详解
2019/06/25 Python
在django view中给form传入参数的例子
2019/07/19 Python
详解Python3 定义一个跨越多行的字符串的多种方法
2020/09/06 Python
一篇文章教你用python画动态爱心表白
2020/11/22 Python
Staples英国官方网站:办公用品一站式采购
2017/10/06 全球购物
奇怪的鱼:Weird Fish
2018/03/18 全球购物
LN-CC英国:伦敦时尚生活的缩影
2019/09/01 全球购物
波兰快递服务:Globkurier.pl
2019/11/08 全球购物
英国奢侈品牌时尚购物平台:Farfetch(支持中文)
2020/02/18 全球购物
2015年房地产销售工作总结
2015/04/20 职场文书
三十年再续同学情倡议书
2019/11/27 职场文书
Python Pandas pandas.read_sql_query函数实例用法分析
2021/06/21 Python
FFmpeg视频处理入门教程(新手必看)
2022/01/22 杂记
opencv深入浅出了解机器学习和深度学习
2022/03/17 Python