UNPKG

modo-mobile

Version:

A mobile UI toolkit, based on React

121 lines (111 loc) 2.04 kB
.slide-motion(@className, @keyframeName) { .make-motion(@className, @keyframeName); .@{className}-enter, .@{className}-appear { opacity: 0; animation-timing-function: @ease-out-quint; } .@{className}-leave { animation-timing-function: @ease-in-quint; } } .slide-motion(slide-up, mSlideUp); .slide-motion(slide-down, mSlideDown); .slide-motion(slide-left, mSlideLeft); .slide-motion(slide-right, mSlideRight); @keyframes mSlideUpIn { 0% { opacity: 0; transform-origin: 0% 0%; transform: scaleY(0.8); } 100% { opacity: 1; transform-origin: 0% 0%; transform: scaleY(1); } } @keyframes mSlideUpOut { 0% { opacity: 1; transform-origin: 0% 0%; transform: scaleY(1); } 100% { opacity: 0; transform-origin: 0% 0%; transform: scaleY(0.8); } } @keyframes mSlideDownIn { 0% { opacity: 0; transform-origin: 100% 100%; transform: scaleY(0.8); } 100% { opacity: 1; transform-origin: 100% 100%; transform: scaleY(1); } } @keyframes mSlideDownOut { 0% { opacity: 1; transform-origin: 100% 100%; transform: scaleY(1); } 100% { opacity: 0; transform-origin: 100% 100%; transform: scaleY(0.8); } } @keyframes mSlideLeftIn { 0% { opacity: 0; transform-origin: 0% 0%; transform: scaleX(0.8); } 100% { opacity: 1; transform-origin: 0% 0%; transform: scaleX(1); } } @keyframes mSlideLeftOut { 0% { opacity: 1; transform-origin: 0% 0%; transform: scaleX(1); } 100% { opacity: 0; transform-origin: 0% 0%; transform: scaleX(0.8); } } @keyframes mSlideRightIn { 0% { opacity: 0; transform-origin: 100% 0%; transform: scaleX(0.8); } 100% { opacity: 1; transform-origin: 100% 0%; transform: scaleX(1); } } @keyframes mSlideRightOut { 0% { opacity: 1; transform-origin: 100% 0%; transform: scaleX(1); } 100% { opacity: 0; transform-origin: 100% 0%; transform: scaleX(0.8); } }