You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
184 lines
2.5 KiB
184 lines
2.5 KiB
/* |
|
Animation 微动画 |
|
基于ColorUI组建库的动画模块 by 文晓港 2019年3月26日19:52:28 |
|
*/ |
|
|
|
/* css 滤镜 控制黑白底色gif的 */ |
|
.gif-black{ |
|
mix-blend-mode: screen; |
|
} |
|
.gif-white{ |
|
mix-blend-mode: multiply; |
|
} |
|
|
|
|
|
/* Animation css */ |
|
[class*=animation-] { |
|
animation-duration: .5s; |
|
animation-timing-function: ease-out; |
|
animation-fill-mode: both |
|
} |
|
|
|
.animation-fade { |
|
animation-name: fade; |
|
animation-duration: .8s; |
|
animation-timing-function: linear |
|
} |
|
|
|
.animation-scale-up { |
|
animation-name: scale-up |
|
} |
|
|
|
.animation-scale-down { |
|
animation-name: scale-down |
|
} |
|
|
|
.animation-slide-top { |
|
animation-name: slide-top |
|
} |
|
|
|
.animation-slide-bottom { |
|
animation-name: slide-bottom |
|
} |
|
|
|
.animation-slide-left { |
|
animation-name: slide-left |
|
} |
|
|
|
.animation-slide-right { |
|
animation-name: slide-right |
|
} |
|
|
|
.animation-shake { |
|
animation-name: shake |
|
} |
|
|
|
.animation-reverse { |
|
animation-direction: reverse |
|
} |
|
|
|
@keyframes fade { |
|
0% { |
|
opacity: 0 |
|
} |
|
|
|
100% { |
|
opacity: 1 |
|
} |
|
} |
|
|
|
@keyframes scale-up { |
|
0% { |
|
opacity: 0; |
|
transform: scale(.2) |
|
} |
|
|
|
100% { |
|
opacity: 1; |
|
transform: scale(1) |
|
} |
|
} |
|
|
|
@keyframes scale-down { |
|
0% { |
|
opacity: 0; |
|
transform: scale(1.8) |
|
} |
|
|
|
100% { |
|
opacity: 1; |
|
transform: scale(1) |
|
} |
|
} |
|
|
|
@keyframes slide-top { |
|
0% { |
|
opacity: 0; |
|
transform: translateY(-100%) |
|
} |
|
|
|
100% { |
|
opacity: 1; |
|
transform: translateY(0) |
|
} |
|
} |
|
|
|
@keyframes slide-bottom { |
|
0% { |
|
opacity: 0; |
|
transform: translateY(100%) |
|
} |
|
|
|
100% { |
|
opacity: 1; |
|
transform: translateY(0) |
|
} |
|
} |
|
|
|
@keyframes shake { |
|
|
|
0%, |
|
100% { |
|
transform: translateX(0) |
|
} |
|
|
|
10% { |
|
transform: translateX(-9px) |
|
} |
|
|
|
20% { |
|
transform: translateX(8px) |
|
} |
|
|
|
30% { |
|
transform: translateX(-7px) |
|
} |
|
|
|
40% { |
|
transform: translateX(6px) |
|
} |
|
|
|
50% { |
|
transform: translateX(-5px) |
|
} |
|
|
|
60% { |
|
transform: translateX(4px) |
|
} |
|
|
|
70% { |
|
transform: translateX(-3px) |
|
} |
|
|
|
80% { |
|
transform: translateX(2px) |
|
} |
|
|
|
90% { |
|
transform: translateX(-1px) |
|
} |
|
} |
|
|
|
@keyframes slide-left { |
|
0% { |
|
opacity: 0; |
|
transform: translateX(-100%) |
|
} |
|
|
|
100% { |
|
opacity: 1; |
|
transform: translateX(0) |
|
} |
|
} |
|
|
|
@keyframes slide-right { |
|
0% { |
|
opacity: 0; |
|
transform: translateX(100%) |
|
} |
|
|
|
100% { |
|
opacity: 1; |
|
transform: translateX(0) |
|
} |
|
} |