文章目录

  • 一、动画
    • 1.1 基本使用
    • 1.2 @keyframes(关键帧) 定义动画
    • 1.3 初步使用
    • 1.4 绕圈
  • 二、动画的常见属性
    • 2.1 解析 aniamtion-direction
    • 2.2 解析 animation-fill-mode
    • 2.3 解析 animation-timing-function
    • 2.4 打字机效果
  • 三、动画简写属性

一、动画

动画( animation)是CSS3中具有颠覆性的特征之ー,可通过设置多个节点来精确控制一个或一组动画常用来实现复杂的动画效果。
相比较过渡,动画可以实现更多变化,更多控制,连续自动插放等效果。

1.1 基本使用

制作动画分为两步:

  1. 定义动画 @keyframes
  2. 使用(调用)

1.2 @keyframes(关键帧) 定义动画

@keyframes animation{0%{...}100%{...}
}
  • 0%是动画的开始,100%是动画的完成。这样的规则就是动画序列
  • @keyframes 中规定某项CSS样式,就能创建由当前样式逐渐改为新样式的动画效果
  • 动画是使元素从一种样式逐渐变化为另一种样式的效果。您可以改变任意多的样式任意多的次数。
  • 请用百分比来规定变化发生的时间,或用关键词"from"和"to",等同于0%和100%

1.3 初步使用

页面一打开,一个DIV将从左移至右。

@keyframes move {from {transform: translateX(0px);}to {transform: translateX(1400px);}
}div {width: 100px;height: 100px;background-color: teal;/* 调用动画 */animation-name: move;/* 持续时间 */animation-duration: 3s;
}

1.4 绕圈

@keyframes move {0% {transform: translateX(0px);}25% {transform: translateX(1000px);}50% {transform: translate(1000px, 500px);}75% {transform: translate(0px, 500px);}100% {transform: translate(0px, 0px);}
}div {width: 100px;height: 100px;background-color: teal;animation-name: move;animation-duration: 3s;
}

效果:

二、动画的常见属性

属性 描述
@keyframes 规定动画
animation 所有动画属性的简写属性,除了 animation-play-state属性
animation-name 制定需要使用的动画( 必须的 )
animation-duration 规定动画完成一个周期所花费的秒或毫秒( 必须的 )
animation-timing-function 规定动画的速度曲线,默认是"ease"”。
aniamtion-delay 规定动画何时开始,默认是0.
animation-iteration-count 规定动画被播放的次数,默认是1,还有 infinite
animation-direction 规定动画是否在下一周期逆向播放,默认是" normal" alternate逆播放
animation-play-state 规定动画是否正在运行或暂停。默认是" running" 还有’ paused 暂停.
animation-fill-mode 规定动画结束后状态,保持 forwards 回到起始 backwards
  • 暂停动画: animation-play-state: paused;经常和鼠标经过等其他配合使用
  • 想要动画走回来,而不是直接跳回来: animation- direction: alternate
  • 盒子动画结束后,停在结束位置: animation- fill-mode: forwards

2.1 解析 aniamtion-direction

动画是否逆向播放

  • aniamtion-direction: norma | reverse | alternate | alternate-reverse

    • normal 默认的
    • reverse 从终点运动向起点 终点=>起点
    • alternate 到达终点后是否原路返回( 起点=>终点=>起点 ) 当 animation-iteration-count < 2 时无效
    • alternate-reverse 终点=>起点=>终点 animation-iteration-count < 2 时无效

2.2 解析 animation-fill-mode

动画结束后状态

  • aniamtion-fill-mode:forwards | backwards

    • forwards 保持当前位置
    • backwards 回到初始位置

2.3 解析 animation-timing-function

animation-timing- function:规定动画的速度曲线,默认是 ease、

描述
linear 动画从头到尾的速度是相同的。匀速
ease 默认。动画以低東开始,然后加快,在结束前变慢。
ease-in 动画以低速开始。
ease-out 动画以低速结束。
ease-in-out 动画以低速开始和结束。
steps 指定了时间函数中的间隔数量(步长)

steps 理解为动画从头到尾,需要多少步来完成。

示例:

div {width: 0;height: 30px;background-color: teal;/* animation: move 4s linear  forwards; *//* steps 就是分几步来完成动画,有了 steps 不要写ease linear了 */animation: move 4s steps(10) forwards;
}@keyframes move {0% {}100% {width: 200px;}
}

效果:

以此推断做一个打字机效果。

2.4 打字机效果

注意:1ch 等于一个 0 的宽度!宽度!宽度!

ch还有另一个规则:

  • 1ch = 1个英文 = 1个数字
  • 2ch = 1个中文
<style>div {font-size: 46px;font-family: monospace;/* 1ch 代表0的宽度  */width: 0ch;white-space: nowrap;/* animation: move 4s linear  forwards; *//* steps 就是分几步来完成动画,有了 steps 不要写ease linear了 */animation: move 4s steps(9) forwards;overflow: hidden;}@keyframes move {0% {}100% {width: 18ch;}}
</style><div>我不知道你在想什么</div>

效果:

三、动画简写属性

animation:动画名称 持续时间 运动曲线 何时开始 播放次数 是否反方向 动画起始或者结束的状太;

示例:
animation:move 1s ease 2s 3 alertnate fowwards

@keyframes move {from {transform: translate(0, 0);}to {transform: translate(1000px, 0);}
}div {width: 100px;height: 100px;background-color: teal;/* 动画名称 *//* animation-name: move; *//* 持续时间 *//* animation-duration: 2s; *//* 速度曲线 *//* animation-timing-function: ease-in; *//* 何时开始:延迟一秒 *//* animation-delay: 1s; *//* 重复次数 *//* animation-iteration-count: 2; *//* 是否逆向播放 *//* animation-direction: alternate-reverse; *//* 结束后状态 *//* animation-fill-mode: forwards; */animation: move 2s linear 0s infinite alternate forwards;
}
/* 鼠标经过暂停动画 */
div:hover{animation-play-state: paused;
}
  • 简写属性里面不包含 animation- play-state

超详细 CSS动画-animation相关推荐

  1. css动画animation详细解读

    以一个小球为例    向右匀速运动200px  然后再移动回来,然后再移动到200px处 停在那里 效果如下 div{width:40px;height:40px;border-radius:50%; ...

  2. css动画-animation各个属性详解(转)

    CSS3的animation很容易就能实现各种酷炫的动画,虽然看到别人的成果图会觉得很难,但是如果掌握好各种动画属性,做好酷炫吊炸天的动画都不在话下,好,切入正题.  一.动画属性:  动画属性包括: ...

  3. HTML5 CSS动画 animation使用

    首先看一下页面的布局 <body><div class="box1"><div class="box2"></div& ...

  4. css动画 animation

    今天用css做了一个简单的三角上下移动的一个小动画,说白了就是在改变该物体的height值.除了这个方法,还可以用js. 一.在用css写动画时,一定要记住兼容性问题.如何解决该兼容性?在前面加内核前 ...

  5. css动画 animation

    1. 线性渐变 线性渐变指的是颜色沿一条直线进行渐变(例如右上到下,从左到右等),要创建线性渐变,您至少需要定义两个色标(色标指的是想要平滑过渡的颜色),若要创建更加复杂的渐变效果,则需要定义更多的色 ...

  6. css动画-animation各个属性详解(通俗易懂)

    https://blog.csdn.net/chritina/article/details/99623017

  7. 超详细!动画图解「合并 K 个排序链表」

    点击蓝色"五分钟学算法"关注我哟 加个"星标",天天中午 12:15,一起学算法 作者 | 李威 来源 | 五分钟学算法 今天分享的题目来源于 LeetCode ...

  8. CSS动画实现心跳效果

    CSS动画实现心跳效果 简介 实现步骤 代码 效果 简介 使用CSS动画animation 和tranform(缩放.旋转). 实现步骤 添加p元素内容之前/之后插入,一个宽为100px,高为160p ...

  9. html怎么添加积分系统,CSS动画实现领积分效果的思路详解

    最近项目中要做一个领积分的效果,根据老板的描述,这个效果类似于支付宝蚂蚁森林里的领取能量.整体效果是就是在树周围飘着几个积分元素,上下滑动,类似星星闪烁,点击领取后,沿着树中心的位置滑动并消失,树上的 ...

  10. 保姆级教程 CSS 知识点梳理大全,超详细!!!

    保姆级教程 CSS 知识点梳理大全,超详细!!! ✴️大家好,我是王同学,好久不见,趁着假期王同学把CSS 知识点梳理了一遍 ✴️如果对你有帮助就给我点个赞吧,这样我们就互不相欠了 ✴️星光不负赶路人 ...

最新文章

  1. ps一点等于多少厘米_50寸液晶电视尺寸是多少
  2. 蒙特卡洛算法及其实现
  3. 使用NSKeyedArchiver归档
  4. Python二级笔记(18,19合集操作篇)
  5. LSTM+MDN【混合密度网络】---sketch rnn
  6. 微课|中学生可以这样学Python(3.1节):单分支选择结构
  7. 在 Domoticz 中添加插座开关
  8. 网警已进入本群代码_“闯黄灯”记3分罚200元?沈阳网警这样回应
  9. 基于51单片机ds18b20智能温控风扇Proteus仿真
  10. Python翻译库 pygtrans 谷歌翻译
  11. 买“背包“吗?送“手臂”的那种!卡耐基梅隆大学可穿戴机械臂问世
  12. LZW算法原理及实现
  13. 简信CRM:企业需要定制CRM系统的三大理由
  14. JVM(四)--垃圾收集器
  15. 制作服装推广软文html,服装行业软文怎么写,公众号服装分销软文推广!
  16. vue+element弹窗可拖拽拉伸和弹窗内table高度自适应
  17. 一文搞懂各大APP!网站python网络爬虫!
  18. SI 539 网站开发(二):week6
  19. 【图解】如何击溃芝诺悖论
  20. 煤矿井下定位系统黑科技—UWB

热门文章

  1. python save保存图片到本地_python保存网页图片到本地的方法
  2. node文件服务器,nodejs一个简单的文件服务器的创建方法
  3. 【2019】Power BI 9月产品功能更新解读
  4. 计算机网络零碎笔记:IP协议(一)
  5. 廖雪峰Java9正则表达式-2正则表达式进阶-3分组匹配
  6. nginx reload报错 ---nginx: [alert] kill(1668, 1) failed (3: No such process)
  7. VMware Workstation 11序列号
  8. 【POJ 3623】 Best Cow Line, Gold (后缀数组)
  9. cvFilter2D() 卷积初步了解
  10. ubuntu 16.04 gogs git 环境搭建