@triggerPrefixCls: rc-trigger-popup; .@{triggerPrefixCls} { position: absolute; left: -9999px; top: -9999px; z-index: 1050; &-hidden { display: none; } .effect() { animation-duration: 0.3s; animation-fill-mode: both; } &-zoom-enter, &-zoom-appear { opacity: 0; .effect(); animation-timing-function: cubic-bezier(0.18, 0.89, 0.32, 1.28); animation-play-state: paused; } &-zoom-leave { animation-timing-function: cubic-bezier(0.6, -0.3, 0.74, 0.05); animation-play-state: paused; } &-zoom-enter-active, &-zoom-appear-active { .effect(); animation-name: rcTriggerZoomIn; animation-play-state: running; } &-zoom-leave-active { .effect(); animation-name: rcTriggerZoomOut; animation-play-state: running; } @keyframes rcTriggerZoomIn { 0% { opacity: 0; } 1% { opacity: 0; transform-origin: 50% 50%; transform: scale(0, 0); } 100% { opacity: 1; transform-origin: 50% 50%; transform: scale(1, 1); } } @keyframes rcTriggerZoomOut { 0% { opacity: 1; transform-origin: 50% 50%; transform: scale(1, 1); } 100% { opacity: 0; transform-origin: 50% 50%; transform: scale(0, 0); } } } @import './mask';