[译]A Simple CSS Animation Tutorial
原文: A Simple CSS Animation Tutorial
看到这篇文章描述简单易懂,适合初学者,于是乎就想着记录和分享一下。
(正文)
以将黄色方块转变为蓝绿色圆型作为一个开始。
上图是来自于 CSS Visual Dictionary
在上述代码中.animateClass被赋给一个元素,动画随即起效。这个class链接到animationName上,animationName需要设定@keyframes规则。这则动画设置在3秒或者3000毫秒之间。 Note: 中间过程添加的特点的动画-提供了一个曲线来描述在特定时间节点上动画的相对速度。 在接下来的内容中我们将覆盖释放过程和其他一些CSS动画属性。
动画是如何工作的
你可以运用动画在任何那些物理位置、维度、角度或者颜色可以变化的CSS属性上。使用关键帧(keyframes)实现基本动画非常简单。
CSS动画关键帧是使用@keyframes关键字指定的。关键帧让元素的状态维持在动画时间线的点上。
CSS动画引擎会自动的在关键帧之间进行插值。你所需要知道的只是设定动画起始和终点的CSS属性。然后用@keyframes animationName{...}创建一个特定名字的动画。
最后,创建一个特定的class来定义你的动画duration/direction/repeatability/ easing type...,链接到@keyframes上。下面将可视化这个过程。
CSS动画属性
8个独立的动画属性速记:
- animation-name:
- animation-duration
- animation-timing-function
- animation-delay: 动画开始前的延迟
- animation-iteration-count: 动画出现的次数
- animation-direction: forwards/backwards/ alternate sequence
- animation-fill-mode: state of the animation when it is not playing
- animation-play-state: specify whether animation is running or is paused
animation-name
.animationClass {animation-name: animationName;animation-fill-mode: normal;animation: normal 3000ms easa-in;
}@keyframes animationName {0%{}100%{}
}
复制代码
animation-duration
通常想先设置动画的长度。正如下图所示可以设置duration单位为秒或者毫秒。
也可以在动画开始前设置一个延迟。
animation-direction
动画方向可以设置normal/reverse/alternate/alternate-reverse
animation-iteration-count
可以看到明显的问题是动画将跳转回第一帧。可以使用其他的一些动画属性来确保不会发生这种跳转。可以设置动画来循环,或者根据特定的UI动态调整其他属性。通过这种方式,你可以之设计动画的一半,并调整属性来向前或者向后播放动画,比如在鼠标进入和退出事件上。
animation-timing-function
Easing由animation-timing-function指定,能为动画增添个性。这是通过调整动画在时间线上任意给定点的速度来实现的。起始点、中间点和终点特别关键,每个Easing类型都是由贝塞尔曲线定义的。
animation-fill-mode
none/forwards/backwards/both
animation-play-state
paused/running
Forward& Inverse Kinematics
... 待完善
转载于:https://juejin.im/post/5cb8896c5188253feb58533e
[译]A Simple CSS Animation Tutorial相关推荐
- CSS魔法堂:更丰富的前端动效by CSS Animation
前言 在<CSS魔法堂:Transition就这么好玩>中我们了解到对于简单的补间动画,我们可以通过transition实现.那到底多简单的动画适合用transtion来实现呢?答案就是 ...
- css html 优化,CSS Animation性能优化
CSS Animation是实现Web Animation方法之一,其主要通过@keyframes和animation-*或者transition来实现一些Web动效.不过今天我们聊的不是怎么制作We ...
- simple css 汉化,Simple CSS(CSS文档生成器)
Simple CSS(CSS文档生成器)简介 Simple CSS(CSS文档生成器)简介一:Simple CSS是一款CSS文档生成器,帮助网页开发人员快速生成CSS样式,Simple CSS使用非 ...
- 利用 CSS animation 和 CSS sprite 制作动画
CSS3 大大强化了制作动画的能力,但是如果要做出图案比较复杂的动画,选择 GIF 依然是一个不错的选择.今天给大家介绍一个使用 CSS animation 配合雪碧图(CSS sprite)来制作动 ...
- mysql orm c语言_【译】Simple MySQL ORM for C
一直不知道有ORM这种东西,直到和 @海坡 交流后才接触. 在项目中,需要将数据存储到数据库中,首先想到的是生成各种raw SQL的解决方法.但随着项目的进展,发现它很不灵活.譬如可能因为有新的需求, ...
- python 生成excel像素画_【译】只用 CSS 就能做到的像素画/像素动画
只用 CSS 就能做到的像素画/像素动画 这篇文章将会介绍只用 CSS 就能制作像素画·像素动画的方法.虽说纯 CSS 就能做到,但是为了更高的可维护性,也会顺便介绍使用 Sass 的制作方法. 上面 ...
- CSS animation 与 transition 有何区别?
CSS的transition只有两个状态:开始状态 和 结束状态:但animation可能是多个状态,有帧的概念 CSS的transition需要借助别的方式来触发,比如CSS的状态选择器(如:hov ...
- 使用css animation动画做边框闪动效果
使用css animation动画做边框闪动效果 在拖拽div节点时,给div节点添加diagramTop-item-click样式,使用css animation动画0.5秒执行一次. css样式 ...
- CSS: Animation CSS:动画 Lynda课程中文字幕
CSS: Animation 中文字幕 CSS:动画 中文字幕CSS: Animation CSS动画为将运动引入交互式项目提供了一种全新的方式 这是网页设计师和开发人员的核心技能,也是用户期望从现代 ...
最新文章
- do一下来了一个redux
- 计算机网络实验二交换机配置Cisco,思科实验1计算机和交换机的ip地址设置
- oracle中master实例,oracle基础(基本介绍)
- 企业级虚拟机管理——虚拟机安装自动化
- java on RHEL5
- Failed to set NvVAD endpoint as default Audio endpoint [0]
- 键盘工具栏的快速集成--IQKeyboardManager
- Spring整合的quartz任务调度的实现方式
- iOS-多线程 ,整理集锦,多种线程的创建
- java 树形图构建
- 微信小程序 --- 获取网络状态
- 本人出版《Java Web 项目开发案例实战—Spring Boot+Mybatis+Hibernate+Spring Cloud》
- OpenSesame:一个能够攻击fixed-pin设备的工具
- 计算机组成原理第五章----存储器容量的扩展与芯片连接
- 搜狗实验室新闻数据文本分类深度学习案例 ———Tensorflow+CNN深度学习全流程(上)
- UFS系列三:UFS数据包UPIU
- 灰尘对服务器影响吗,灰尘可谓是数据中心机房的死敌
- [ICPC USA]Faulty Robot
- 崔岩的笔记——动态时间规整算法(Dynamic Time Warping,DTW)
- 收藏的技术资料下载网址
热门文章
- C语言里printf函数格式控制符的完整格式
- 小程序模拟请求本地json数据文章合集
- Pythone3 sys模块
- codeforces 848B Rooter's Song 思维题
- 20145207《Java程序设计》实验二(Java面向对象程序设计)实验报告
- Windows 64位下装Oracle 11g,PLSQL Developer的配置问题,数据库处显示为空白的解决方案...
- git merge 和 git rebase 小结
- 【转】15个超炫的HTML5效果
- Jqgrid入门-别具特色的Pager Bar (四)
- 面试问题(工作动机、个人愿望 )