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 相关文章推荐
Web前端绘制0.5像素的几种方法
Aug 11 HTML / CSS
HTML5时代CSS设置漂亮字体取代图片
Sep 04 HTML / CSS
HTML5里autofocus自动聚焦属性使用介绍
Jun 22 HTML / CSS
HTML5是否真的可以取代Flash
Feb 10 HTML / CSS
深入浅析HTML5中的SVG
Nov 27 HTML / CSS
图片上传插件ImgUploadJS:用HTML5 File API 实现截图粘贴上传、拖拽上传
Jan 20 HTML / CSS
浅谈html5标签css3的常用样式
Oct 20 HTML / CSS
5分钟实现Canvas鼠标跟随动画背景
Nov 18 HTML / CSS
Html5 webRTC简单实现视频调用的示例代码
Sep 23 HTML / CSS
HTML中的表单Form实现居中效果
May 25 HTML / CSS
仅仅使用 HTML/CSS 实现各类进度条的方式汇总
Nov 11 HTML / CSS
分享CSS盒子模型隐藏的几种方式
Feb 28 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学习 变量使用总结
2011/03/24 PHP
php正则表达式(regar expression)
2011/09/10 PHP
php利用cookie实现自动登录的方法
2014/12/10 PHP
Zend Framework教程之MVC框架的Controller用法分析
2016/03/07 PHP
PHP批量获取网页中所有固定种子链接的方法
2016/11/18 PHP
Javascript学习笔记4 Eval函数
2010/01/11 Javascript
Firebug入门指南(Firefox浏览器)
2010/08/21 Javascript
基于jquery的3d效果实现代码
2011/03/23 Javascript
容易被忽略的JS脚本特性
2011/09/13 Javascript
JavaScript中数组的排序、乱序和搜索实现代码
2011/11/30 Javascript
基于jquery DOM写的类似微博发布的效果
2012/10/20 Javascript
jquery新的绑定事件机制on方法的使用方法
2014/04/15 Javascript
在Ubuntu上安装最新版本的Node.js
2014/07/14 Javascript
JS弹出可拖拽可关闭的div层完整实例
2015/02/13 Javascript
详解如何构建一个Angular6的第三方npm包
2018/09/07 Javascript
详解react-refetch的使用小例子
2019/02/15 Javascript
Vue-cli项目部署到Nginx服务器的方法
2019/11/01 Javascript
django+xadmin+djcelery实现后台管理定时任务
2018/08/14 Python
python二分法查找算法实现方法【递归与非递归】
2019/12/06 Python
python实现从ftp服务器下载文件
2020/03/03 Python
Python图片处理模块PIL操作方法(pillow)
2020/04/07 Python
python属于哪种语言
2020/08/16 Python
Python容器类型公共方法总结
2020/08/19 Python
详解python UDP 编程
2020/08/24 Python
python PIL模块的基本使用
2020/09/29 Python
python爬虫利器之requests库的用法(超全面的爬取网页案例)
2020/12/17 Python
详解Python 中的 defaultdict 数据类型
2021/02/22 Python
使用phonegap进行提示操作的具体方法
2017/03/30 HTML / CSS
SmartBuyGlasses英国:购买太阳镜和眼镜
2018/01/29 全球购物
戴森西班牙官网:Dyson西班牙
2020/02/04 全球购物
Shell脚本如何向终端输出信息
2014/04/25 面试题
致400米运动员广播稿
2014/02/07 职场文书
小学敬老月活动方案
2014/02/11 职场文书
无财产离婚协议书范本
2014/10/28 职场文书
超强台风观后感
2015/06/09 职场文书
高考要来啦!用Python爬取历年高考数据并分析
2021/06/03 Python