react-status-stories
Version:
A lightweight and customizable React component to display WhatsApp-style status stories with circular previews. Perfect for building Instagram, WhatsApp, or Snapchat-like story UIs in your React apps.
91 lines (90 loc) • 1.69 kB
CSS
.jul-stories {
position: relative;
display: flex;
user-select: none;
}
.jul-stories__container {
width: 100%;
z-index: 1;
pointer-events: none;
}
.jul-stories__container img {
display: block;
width: 100%;
}
.jul-stories__container figure {
margin: 0;
}
.jul-stories__container figcaption {
position: absolute;
bottom: 6rem;
font-weight: bolder;
color: white;
font-size: 3.4rem;
left: 1rem;
}
.jul-stories__control {
position: absolute;
display: flex;
justify-content: space-between;
width: 100%;
height: 100%;
}
.jul-stories__control button {
width: 50%;
cursor: pointer;
}
.jul-stories__progressContainer {
position: absolute;
z-index: 1;
display: flex;
justify-content: space-between;
align-items: center;
gap: 0.15rem;
width: 100%;
}
.jul-stories__progressItems {
position: relative;
border-radius: 0.4rem;
margin: 0.7rem 0.3rem;
flex: 1;
height: 0.8rem;
background-color: rgb(180, 164, 167);
overflow: hidden;
}
.jul-stories__progressItems--active {
position: absolute;
background-color: rgb(199, 134, 134);
height: 100%;
width: 100%;
animation-name: storiesProgress;
animation-timing-function: linear;
}
.jul-stories__pause-play {
position: absolute;
z-index: 5;
right: 1.2rem;
cursor: pointer;
top: 3rem;
display: flex;
height: 4rem;
width: 4rem;
background: transparent;
justify-content: center;
align-items: center;
border-radius: 50%;
}
.jul-stories__pause-play--paused svg {
margin-left: 0.4rem;
}
.jul-stories__pause-play:hover {
background-color: rgba(255, 255, 255, 0.2);
}
@keyframes storiesProgress {
from {
width: 0%;
}
to {
width: 100%;
}
}