61 lines
1.3 KiB
SCSS
61 lines
1.3 KiB
SCSS
|
.skeleton-wrapper {
|
||
|
max-width: 600px;
|
||
|
margin: 0 auto;
|
||
|
width: 100%;
|
||
|
|
||
|
.skeleton {
|
||
|
background: var(--background-color-gray);
|
||
|
|
||
|
border-radius: 8px;
|
||
|
position: relative;
|
||
|
overflow: hidden;
|
||
|
|
||
|
&::after {
|
||
|
content: '';
|
||
|
position: absolute;
|
||
|
top: 0;
|
||
|
left: 0;
|
||
|
right: 0;
|
||
|
bottom: 0;
|
||
|
background-image: linear-gradient(90deg,
|
||
|
rgba(255, 255, 255, 0) 0%,
|
||
|
rgba(255, 255, 255, 0.2) 20%,
|
||
|
rgba(255, 255, 255, 0.5) 60%,
|
||
|
rgba(255, 255, 255, 0) 100%);
|
||
|
transform: translateX(-100%);
|
||
|
animation: shimmer 1.5s infinite;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.skeleton-header {
|
||
|
margin-bottom: 20px;
|
||
|
|
||
|
.skeleton-title {
|
||
|
width: 100%;
|
||
|
height: 25px;
|
||
|
margin-bottom: 12px;
|
||
|
}
|
||
|
|
||
|
.skeleton-subtitle {
|
||
|
width: 100%;
|
||
|
height: 4px;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.skeleton-content {
|
||
|
display: flex;
|
||
|
flex-direction: column;
|
||
|
gap: 16px;
|
||
|
|
||
|
.skeleton-card {
|
||
|
width: 100%;
|
||
|
height: 15px;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
@keyframes shimmer {
|
||
|
100% {
|
||
|
transform: translateX(100%);
|
||
|
}
|
||
|
}
|