CSS Animation
2022-04-21
CSS 中,对于实现动画或过渡等方式主要可以通过使用transition / animation来进行实现大部分交互需求:
| ID | DA | FA |
|---|---|---|
| @keyframes | 通过@keyframes 创建动画(原理是将一套CSS样式逐渐变化为另一套样式,通常可以通过百分比) | |
| animation-name | 为动画设置名称 | keyframename、none |
| animation-duration | 设置动画的持续时间(秒/毫秒) | time |
| animation-timing-function | 规定动画的速度曲线(速度曲线将会使得动画更加丝滑) |
linear、ease、ease-in、ease-out、ease-in-out、cubic-bezier |
| animation-delay | 设置动画何时开始(单位可以是秒或毫秒,允许负值) |
time |
| animation-iteration-count | 设置动画播放次数 | n、infinite |
| animation-direction | 属性控制在奇数(reverse)、和偶数(alternate)之间播放动画 |
normal 、alternate |
| animation-play-state | 设置是否运行或暂停动画 | paused \ running |
| animation-fill-mode | 设置样式在动画不播放时的应用元素 | none、forwards、backwards、both、initial、inherit |
| none | 默认值 | |
| forwards | 动画结束后使用元素的结尾结束值 | |
| backwards | 使用元素的起始值 | |
| both | 动画将遵循向前向后规则 |
transform

通过使用 transform 来让单纯的上移更加的富有动画效果:
1 | <div class="con"> |
CSS
1 | @keyframes scroll { |
Animation and js
打字效果

通过使用 Animation 内每个阶段不同之间的动画,来配合js属性调用activeCSS属性来实现出打字效果。
1 | <div> |
CSS
1 | @keyframes animate-x { |
这里的 steps(12)实际上将动画分为了12段,这也正符合了Hello,world的文字字数。
弹窗

HTML
1 |
|
CSS
1 | @charset "UTF-8"; |
