All Prompts
All Prompts

buttoninteractiveanimatedcssui
System Scan Button with Animated Scan Line
Кнопка 'SYSTEM SCAN' с анимированной линией сканирования. Идеальна для дашбордов, утилит и инструментов безопасности.
Prompt
<style>
/* 22. SCANNER */
.btn-scan {
position: relative; /* so .scan-line & spotlight are positioned inside */
display: inline-flex;
align-items: center;
justify-content: center;
gap: 0.5rem;
padding: 0.75rem 1.5rem;
background: transparent;
border-radius: 999px;
overflow: hidden;
border: 1px solid rgba(0, 255, 0, 0.3);
color: rgba(0, 255, 0, 0.8);
font-size: 0.8rem;
letter-spacing: 0.18em;
text-transform: uppercase;
}
.btn-size-2 {
width: 100%; /* your original intent for full-width button */
}
.scan-line {
position: absolute;
top: 0;
left: -50%;
width: 100%;
height: 100%;
background: linear-gradient(
90deg,
transparent,
rgba(0, 255, 0, 0.4),
transparent
);
animation: scan 2s infinite ease-in-out;
transform: skewX(-20deg);
pointer-events: none;
}
@keyframes scan {
0% { left: -100%; }
100% { left: 200%; }
}
/* ================================================================
Spotlight overlay
=================================================================*/
.btn-spotlight {
position: relative;
}
.spotlight-beam {
position: absolute;
inset: 0;
background:
radial-gradient(circle at 30% -10%,
rgba(0, 255, 0, 0.35),
transparent 55%);
opacity: 0;
mix-blend-mode: screen;
transition: opacity 0.25s ease-out;
pointer-events: none;
z-index: 1;
}
/* Missing line you mentioned */
.btn-spotlight:hover .spotlight-beam {
opacity: 1;
}
/* 3D / other utilities you already had (kept as-is) */
.preserve-3d { transform-style: preserve-3d; }
.backface-hidden { backface-visibility: hidden; }
.persp-1000 { perspective: 1000px; }
.persp-2000 { perspective: 2000px; }
.rotate-x-90 { transform: rotateX(90deg); }
.rotate-y-180 { transform: rotateY(180deg); }
.-rotate-x-90 { transform: rotateX(-90deg); }
.rotate-x-110 { transform: rotateX(110deg); }
.-rotate-y-140 { transform: rotateY(-140deg); }
.group:hover .group-hover\:rotate-x-\[110deg\] { transform: rotateX(110deg); }
.group:hover .group-hover\:rotate-y-\[-140deg\] { transform: rotateY(-140deg); }
@keyframes scan-line-3d {
0% { transform: translateX(-100%); }
100% { transform: translateX(500%); }
}
@keyframes wiggle {
0%, 100% { transform: rotate(0deg); }
25% { transform: rotate(-15deg); }
75% { transform: rotate(15deg); }
}
@keyframes pulse-ring {
0% { transform: scale(0.8); opacity: 0.5; }
100% { transform: scale(2); opacity: 0; }
}
.animate-scan-3d,
.animate-scan {
animation: scan-line-3d 2.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}
.group:hover .animate-bell-wiggle {
animation: wiggle 0.5s ease-in-out infinite;
}
.group:hover .animate-pulse-ring {
animation: pulse-ring 1.5s cubic-bezier(0, 0, 0.2, 1) infinite;
}
.btn-size-3 {
width: 100%;
}
</style>
<div class="btn-wrapper" style="max-width: 260px;">
<button class="btn-scan btn-spotlight btn-size-2">
<!-- Spotlight overlay -->
<div class="spotlight-beam"></div>
<!-- Scan line -->
<div class="scan-line"></div>
<!-- Label -->
<span style="position:relative; z-index:2;">
SYSTEM SCAN
</span>
</button>
</div>