UNPKG

formstone

Version:

Library of modular front end components.

187 lines (153 loc) 6.53 kB
.fs-checkpoint { --fs-checkpoint-duration: 0.5s; --fs-checkpoint-offset: 50px; --fs-checkpoint-scale-in: 0.5; --fs-checkpoint-scale-out: 1.25; --fs-checkpoint-rotate: 90deg; --fs-checkpoint-perspective: 3000px; } @media (prefers-reduced-motion) { .fs-checkpoint { --fs-checkpoint-duration: 0s; } } [data-checkpoint-animation="fade-in"], [data-checkpoint-animation="fade-up"], [data-checkpoint-animation="fade-down"], [data-checkpoint-animation="fade-left"], [data-checkpoint-animation="fade-right"] { opacity: 0; transition: opacity var(--fs-checkpoint-duration) linear, transform var(--fs-checkpoint-duration) ease; } [data-checkpoint-animation="fade-in"].fs-checkpoint-active, [data-checkpoint-animation="fade-up"].fs-checkpoint-active, [data-checkpoint-animation="fade-down"].fs-checkpoint-active, [data-checkpoint-animation="fade-left"].fs-checkpoint-active, [data-checkpoint-animation="fade-right"].fs-checkpoint-active { opacity: 1; } [data-checkpoint-animation="fade-up"] { transform: translateY(var(--fs-checkpoint-offset)); } [data-checkpoint-animation="fade-down"] { transform: translateY(calc(var(--fs-checkpoint-offset) * -1)); } [data-checkpoint-animation="fade-up"].fs-checkpoint-active, [data-checkpoint-animation="fade-down"].fs-checkpoint-active { transform: translateY(0); } [data-checkpoint-animation="fade-left"] { transform: translateX(calc(var(--fs-checkpoint-offset) * -1)); } [data-checkpoint-animation="fade-right"] { transform: translateX(var(--fs-checkpoint-offset)); } [data-checkpoint-animation="fade-left"].fs-checkpoint-active, [data-checkpoint-animation="fade-right"].fs-checkpoint-active { transform: translateX(0); } [data-checkpoint-animation="zoom-in"], [data-checkpoint-animation="zoom-in-up"], [data-checkpoint-animation="zoom-in-down"], [data-checkpoint-animation="zoom-in-left"], [data-checkpoint-animation="zoom-in-right"] { opacity: 0; transition: opacity var(--fs-checkpoint-duration) linear, transform var(--fs-checkpoint-duration) ease; } [data-checkpoint-animation="zoom-in"].fs-checkpoint-active, [data-checkpoint-animation="zoom-in-up"].fs-checkpoint-active, [data-checkpoint-animation="zoom-in-down"].fs-checkpoint-active, [data-checkpoint-animation="zoom-in-left"].fs-checkpoint-active, [data-checkpoint-animation="zoom-in-right"].fs-checkpoint-active { opacity: 1; } [data-checkpoint-animation="zoom-in"] { transform: translateY(0) scale(var(--fs-checkpoint-scale-in)); } [data-checkpoint-animation="zoom-in-up"] { transform: translateY(var(--fs-checkpoint-offset)) scale(var(--fs-checkpoint-scale-in)); } [data-checkpoint-animation="zoom-in-down"] { transform: translateY(calc(var(--fs-checkpoint-offset) * -1)) scale(var(--fs-checkpoint-scale-in)); } [data-checkpoint-animation="zoom-in"].fs-checkpoint-active, [data-checkpoint-animation="zoom-in-up"].fs-checkpoint-active, [data-checkpoint-animation="zoom-in-down"].fs-checkpoint-active { transform: translateY(0) scale(1); } [data-checkpoint-animation="zoom-in-left"] { transform: translateX(calc(var(--fs-checkpoint-offset) * -1)) scale(var(--fs-checkpoint-scale-in)); } [data-checkpoint-animation="zoom-in-right"] { transform: translateX(var(--fs-checkpoint-offset)) scale(var(--fs-checkpoint-scale-in)); } [data-checkpoint-animation="zoom-in-left"].fs-checkpoint-active, [data-checkpoint-animation="zoom-in-right"].fs-checkpoint-active { transform: translateX(0) scale(1); } [data-checkpoint-animation="zoom-out"], [data-checkpoint-animation="zoom-out-up"], [data-checkpoint-animation="zoom-out-down"], [data-checkpoint-animation="zoom-out-left"], [data-checkpoint-animation="zoom-out-right"] { opacity: 0; transition: opacity var(--fs-checkpoint-duration) linear, transform var(--fs-checkpoint-duration) ease; } [data-checkpoint-animation="zoom-out"].fs-checkpoint-active, [data-checkpoint-animation="zoom-out-up"].fs-checkpoint-active, [data-checkpoint-animation="zoom-out-down"].fs-checkpoint-active, [data-checkpoint-animation="zoom-out-left"].fs-checkpoint-active, [data-checkpoint-animation="zoom-out-right"].fs-checkpoint-active { opacity: 1; } [data-checkpoint-animation="zoom-out"] { transform: translateY(0) scale(var(--fs-checkpoint-scale-out)); } [data-checkpoint-animation="zoom-out-up"] { transform: translateY(var(--fs-checkpoint-offset)) scale(var(--fs-checkpoint-scale-out)); } [data-checkpoint-animation="zoom-out-down"] { transform: translateY(calc(var(--fs-checkpoint-offset) * -1)) scale(var(--fs-checkpoint-scale-out)); } [data-checkpoint-animation="zoom-out"].fs-checkpoint-active, [data-checkpoint-animation="zoom-out-up"].fs-checkpoint-active, [data-checkpoint-animation="zoom-out-down"].fs-checkpoint-active { transform: translateY(0) scale(1); } [data-checkpoint-animation="zoom-out-left"] { transform: translateX(calc(var(--fs-checkpoint-offset) * -1)) scale(var(--fs-checkpoint-scale-out)); } [data-checkpoint-animation="zoom-out-right"] { transform: translateX(var(--fs-checkpoint-offset)) scale(var(--fs-checkpoint-scale-out)); } [data-checkpoint-animation="zoom-out-left"].fs-checkpoint-active, [data-checkpoint-animation="zoom-out-right"].fs-checkpoint-active { transform: translateX(0) scale(1); } [data-checkpoint-animation="flip-up"], [data-checkpoint-animation="flip-down"], [data-checkpoint-animation="flip-left"], [data-checkpoint-animation="flip-right"] { backface-visibility: hidden; transition: opacity var(--fs-checkpoint-duration) linear, transform var(--fs-checkpoint-duration) ease; } [data-checkpoint-animation="flip-up"] { transform: perspective(var(--fs-checkpoint-perspective)) rotateX(calc(var(--fs-checkpoint-rotate) * -1)); } [data-checkpoint-animation="flip-down"] { transform: perspective(var(--fs-checkpoint-perspective)) rotateX(var(--fs-checkpoint-rotate)); } [data-checkpoint-animation="flip-up"].fs-checkpoint-active, [data-checkpoint-animation="flip-down"].fs-checkpoint-active { transform: perspective(var(--fs-checkpoint-perspective)) rotateX(0); } [data-checkpoint-animation="flip-left"] { transform: perspective(var(--fs-checkpoint-perspective)) rotateY(var(--fs-checkpoint-rotate)); } [data-checkpoint-animation="flip-right"] { transform: perspective(var(--fs-checkpoint-perspective)) rotateY(calc(var(--fs-checkpoint-rotate) * -1)); } [data-checkpoint-animation="flip-left"].fs-checkpoint-active, [data-checkpoint-animation="flip-right"].fs-checkpoint-active { transform: perspective(var(--fs-checkpoint-perspective)) rotateY(0); }