ArticleTemplates/assets/scss/base/_animation.scss (146 lines of code) (raw):

// /*doc // --- // title: Animation // name: animation // category: Base // --- // Fade in from right: // // ```html_example // <div class="styleguide__anim"> // <span class="animated fadeinright"></span> // </div> // ``` // // Slide in from right: // // ```html_example // <div class="styleguide__anim"> // <span class="animated slideinright"></span> // </div> // ``` // // Scale out: // // ```html_example // <div class="styleguide__anim"> // <span class="animated scaleout"></span> // </div> // ``` // // Blink: // // ```html_example // <div class="styleguide__anim"> // <span class="animated blink"></span> // </div> // ``` // */ .animated { -webkit-animation-duration: .6s; animation-duration: .6s; -webkit-animation-fill-mode: both; animation-fill-mode: both; } @-webkit-keyframes fadeinright { 0% { opacity: 0; -webkit-transform: translateX(30px); transform: translateX(30px); } 20% { opacity: 1; } 100% { opacity: 1; -webkit-transform: translateX(0); transform: translateX(0); } } .fadeinright { -webkit-animation-name: fadeinright; animation-name: fadeinright; } @-webkit-keyframes slideinright { 0% { opacity: 0; -webkit-transform: translateX(2000px); transform: translateX(2000px); } 100% { -webkit-transform: translateX(0); transform: translateX(0); } } .slideinright { -webkit-animation-name: slideinright; animation-name: slideinright; } @-webkit-keyframes scaleout { 0% { -webkit-transform: translateX(0); transform: translateX(0); } 100% { opacity: 0; -webkit-transform: translateX(-20px) scale(.4); transform: translateX(-20px) scale(.4); } } .scaleout { -webkit-animation-name: scaleout; animation-name: scaleout; } @-webkit-keyframes blink { 0% { opacity: 0; } 50% { opacity: 1; } 100% { opacity: 0; } } @keyframes blink { 0% { opacity: 0; } 50% { opacity: 1; } 100% { opacity: 0; } } .blink { -webkit-animation-name: blink; animation-name: blink; } .section__live__pulse { -webkit-animation: blink 1.5s ease-in infinite; } @-webkit-keyframes flipInX { from { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); transform: perspective(400px) rotate3d(1, 0, 0, 90deg); -webkit-animation-timing-function: ease-in; animation-timing-function: ease-in; opacity: 0; } 40% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg); transform: perspective(400px) rotate3d(1, 0, 0, -20deg); -webkit-animation-timing-function: ease-in; animation-timing-function: ease-in; } 60% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg); transform: perspective(400px) rotate3d(1, 0, 0, 10deg); opacity: 1; } 80% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg); transform: perspective(400px) rotate3d(1, 0, 0, -5deg); } to { -webkit-transform: perspective(400px); transform: perspective(400px); } } @keyframes flipInX { from { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); transform: perspective(400px) rotate3d(1, 0, 0, 90deg); -webkit-animation-timing-function: ease-in; animation-timing-function: ease-in; opacity: 0; } 40% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg); transform: perspective(400px) rotate3d(1, 0, 0, -20deg); -webkit-animation-timing-function: ease-in; animation-timing-function: ease-in; } 60% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg); transform: perspective(400px) rotate3d(1, 0, 0, 10deg); opacity: 1; } 80% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg); transform: perspective(400px) rotate3d(1, 0, 0, -5deg); } to { -webkit-transform: perspective(400px); transform: perspective(400px); } } .flipInX { -webkit-backface-visibility: visible !important; backface-visibility: visible !important; -webkit-animation-name: flipInX; animation-name: flipInX; }