@skeleton-elements/vue
Version:
Skeleton elements (aka UI Skeletons, Skeleton Screens, Ghost Elements) are representations of UI that will be available (loaded) soon. They are designed to improve perceived performance.
76 lines (66 loc) • 1.87 kB
CSS
:root {
--skeleton-color: #ccc;
--skeleton-icon-color: rgba(0, 0, 0, 0.25); }
.skeleton-effect-blink {
-webkit-mask-image: linear-gradient(to right, transparent 0%, black 25%, black 75%, transparent 100%);
mask-image: linear-gradient(to right, transparent 0%, black 25%, black 75%, transparent 100%);
-webkit-mask-size: 200% 100%;
mask-size: 200% 100%;
-webkit-mask-repeat: repeat;
mask-repeat: repeat;
-webkit-mask-position: 50% top;
mask-position: 50% top;
-webkit-animation: skeleton-effect-blink 1s infinite;
animation: skeleton-effect-blink 1s infinite; }
.skeleton-effect-fade {
-webkit-animation: skeleton-effect-fade 1s infinite;
animation: skeleton-effect-fade 1s infinite; }
.skeleton-effect-pulse {
-webkit-animation: skeleton-effect-pulse 1s infinite;
animation: skeleton-effect-pulse 1s infinite; }
@-webkit-keyframes skeleton-effect-fade {
0% {
opacity: 1; }
50% {
opacity: 0.2; }
100% {
opacity: 1; } }
@keyframes skeleton-effect-fade {
0% {
opacity: 1; }
50% {
opacity: 0.2; }
100% {
opacity: 1; } }
@-webkit-keyframes skeleton-effect-blink {
0% {
-webkit-mask-position: 50% top;
mask-position: 50% top; }
100% {
-webkit-mask-position: -150% top;
mask-position: -150% top; } }
@keyframes skeleton-effect-blink {
0% {
-webkit-mask-position: 50% top;
mask-position: 50% top; }
100% {
-webkit-mask-position: -150% top;
mask-position: -150% top; } }
@-webkit-keyframes skeleton-effect-pulse {
0% {
transform: scale(1); }
40% {
transform: scale(1); }
50% {
transform: scale(0.975); }
100% {
transform: scale(1); } }
@keyframes skeleton-effect-pulse {
0% {
transform: scale(1); }
40% {
transform: scale(1); }
50% {
transform: scale(0.975); }
100% {
transform: scale(1); } }