提交 58b04e8a 编写于 作者: A afc163

animation for popover

上级 fb52d112
.effect() { .effect() {
animation-duration: 0.25s; animation-duration: 0.24s;
animation-fill-mode: both; animation-fill-mode: both;
display: block !important; display: block !important;
} }
.zoom-enter { .motion(@className, @keyframeName) {
opacity: 0; .@{className}-enter {
.effect(); opacity: 0;
animation-timing-function: cubic-bezier(0.18, 0.89, 0.32, 1.28); .effect();
animation-play-state: paused; animation-timing-function: cubic-bezier(0.18, 0.89, 0.32, 1.28);
} animation-play-state: paused;
}
.zoom-leave { .@{className}-leave {
.effect(); .effect();
animation-timing-function: cubic-bezier(0.6, -0.3, 0.74, 0.05); animation-timing-function: cubic-bezier(0.6, -0.3, 0.74, 0.05);
animation-play-state: paused; animation-play-state: paused;
} }
.@{className}-enter.@{className}-enter-active {
.zoom-enter.zoom-enter-active { animation-name: ~"@{keyframeName}In";
animation-name: zoomIn; animation-play-state: running;
animation-play-state: running; }
.@{className}-leave.@{className}-leave-active {
animation-name: ~"@{keyframeName}Out";
animation-play-state: running;
}
} }
.zoom-leave.zoom-leave-active { .motion(zoom,zoom);
animation-name: zoomOut; .motion(zoom-up,zoomUp);
animation-play-state: running; .motion(zoom-down,zoomDown);
} .motion(zoom-left,zoomLeft);
.motion(zoom-right,zoomRight);
@keyframes zoomIn { @keyframes zoomIn {
0% { 0% {
...@@ -52,6 +57,110 @@ ...@@ -52,6 +57,110 @@
} }
} }
@keyframes zoomUpIn {
0% {
opacity: 0;
transform-origin: 50% 0%;
transform: scale(0, 0);
}
100% {
opacity: 1;
transform-origin: 50% 0%;
transform: scale(1, 1);
}
}
@keyframes zoomUpOut {
0% {
opacity: 1;
transform-origin: 50% 0%;
transform: scale(1, 1);
}
100% {
opacity: 0;
transform-origin: 50% 0%;
transform: scale(0, 0);
}
}
@keyframes zoomLeftIn {
0% {
opacity: 0;
transform-origin: 0% 50%;
transform: scale(0, 0);
}
100% {
opacity: 1;
transform-origin: 0% 50%;
transform: scale(1, 1);
}
}
@keyframes zoomLeftOut {
0% {
opacity: 1;
transform-origin: 0% 50%;
transform: scale(1, 1);
}
100% {
opacity: 0;
transform-origin: 0% 50%;
transform: scale(0, 0);
}
}
@keyframes zoomRightIn {
0% {
opacity: 0;
transform-origin: 100% 50%;
transform: scale(0, 0);
}
100% {
opacity: 1;
transform-origin: 100% 50%;
transform: scale(1, 1);
}
}
@keyframes zoomRightOut {
0% {
opacity: 1;
transform-origin: 100% 50%;
transform: scale(1, 1);
}
100% {
opacity: 0;
transform-origin: 100% 50%;
transform: scale(0, 0);
}
}
@keyframes zoomDownIn {
0% {
opacity: 0;
transform-origin: 50% 100%;
transform: scale(0, 0);
}
100% {
opacity: 1;
transform-origin: 50% 100%;
transform: scale(1, 1);
}
}
@keyframes zoomDownOut {
0% {
opacity: 1;
transform-origin: 50% 100%;
transform: scale(1, 1);
}
100% {
opacity: 0;
transform-origin: 50% 100%;
transform: scale(0, 0);
}
}
.slide-up-enter { .slide-up-enter {
.effect(); .effect();
transform-origin: 0 0; transform-origin: 0 0;
...@@ -153,4 +262,4 @@ ...@@ -153,4 +262,4 @@
transform-origin: 50% 50%; transform-origin: 50% 50%;
transform: rotate(360deg); transform: rotate(360deg);
} }
} }
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册