CSS动画

81 阅读2分钟

容易混淆的几个css属性

属性含义
animation(动画)用于设置动画属性,他是一个简写的属性,包含6个属性
transition(过渡)用于设置元素的样式过度,和animation有着类似的效果,但细节上有很大的不同
transform(变形)用于元素进行旋转、缩放、移动或倾斜(skew),和设置样式的动画并没有什么关系,就相当于color一样用来设置元素的“外表”
translate(移动)translate只是transform的一个属性值,即移动

transition

什么叫过渡?字面意思上来讲,就是元素从这个属性(color)的某个值(red)过渡到这个属性(color)的另外一个值(green),这是一个状态的转变,需要一种条件来触发这种转变,比如我们平时用到的:hoever、:focus、:checked、媒体查询或者JavaScript transition: property duration timing-function delay; image.png

animation

在官方的介绍上介绍这个属性是transition属性的扩展,弥补了transition的很多不足,我理解为animation是由多个transition的效果叠加,并且可操作性更强,能够做出复杂酷炫的效果 animation: name duration timing-function delay iteration-count direction play-state fill-mode animation:动画名称,一个周期花费时间,运动曲线(默认ease),动画延迟(默认0),播放次数(默认1),是否反向播放动画(默认normal),是否暂停动画(默认running)

fill-mode: none | forwards | backwards | both;
forwards :当动画完成后,保持最后一个属性值 backwards:动画回到第一帧的状态 both:向前和向后填充模式都被应用。 image.png

WOW.js 让页面滚动更有趣

npm install wowjs --save-dev (animate.css会自动安装。)
import 'animate.css'
import {WOW} from 'wowjs'

image.png

### 滚动捕抓

现在只要几行代码就可以实现幻灯片、图片库这些功能

image.png

mousemove 动态改变transform 的值

image.png

链接: wangyonghui66.github.io/
github: github.com/wangyonghui…