@vime/core
Version:
Customizable, extensible, accessible and framework agnostic media player.
57 lines (51 loc) • 1.13 kB
CSS
/**
* @prop --vm-skeleton-color: The color of the skeleton.
* @prop --vm-skeleton-sheen-color: The sheen color when the skeleton is in its loading state.
* @prop --vm-skeleton-z-index: The position in the UI z-axis stack inside the player.
*/
:host {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
z-index: var(--vm-skeleton-z-index);
}
@keyframes sheen {
0% {
background-position: 200% 0;
}
to {
background-position: -200% 0;
}
}
.skeleton {
width: 100%;
height: 100%;
display: flex;
min-height: 1rem;
pointer-events: auto;
}
.sheen.hidden {
opacity: 0;
visibility: hidden;
transition: var(--vm-fade-transition);
pointer-events: none;
}
.indicator {
flex: 1 1 auto;
background: var(--vm-skeleton-color);
}
.skeleton.sheen .indicator {
background: linear-gradient(
270deg,
var(--vm-skeleton-sheen-color),
var(--vm-skeleton-color),
var(--vm-skeleton-color),
var(--vm-skeleton-sheen-color)
);
background-size: 400% 100%;
background-size: 400% 100%;
animation: sheen 8s ease-in-out infinite;
}