All checks were successful
Auto Release Plugin / build-and-release (push) Successful in 45s
- Introduced new CSS and JS files for Pi Day, Pride, Rain, and Storm effects. - Updated existing seasonal styles (e.g., Halloween, Hearts, Resurrection) to improve performance with 'contain: layout paint'. - Enhanced animations for seasonal effects, including adjustments to keyframes and element creation logic. - Added configuration options for new effects in the main seasonals.js file. - Updated test-site.html to include new seasonal options in the dropdown.
44 lines
1.0 KiB
CSS
44 lines
1.0 KiB
CSS
.eurovision-container {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100vw;
|
|
height: 100vh;
|
|
pointer-events: none;
|
|
z-index: 1000;
|
|
overflow: hidden;
|
|
contain: layout paint;
|
|
}
|
|
|
|
.music-note-wrapper {
|
|
position: absolute;
|
|
left: 0;
|
|
/* initial top will be set via JS */
|
|
opacity: 0;
|
|
animation: move-right linear infinite;
|
|
will-change: transform, opacity;
|
|
}
|
|
|
|
.music-note {
|
|
display: block;
|
|
font-size: 2rem;
|
|
color: rgba(255, 255, 255, 0.9);
|
|
text-shadow: 0 0 8px rgba(255, 255, 255, 0.6);
|
|
animation: sway ease-in-out infinite alternate;
|
|
will-change: transform;
|
|
}
|
|
|
|
/* Horizontal scroll from left to right */
|
|
@keyframes move-right {
|
|
0% { transform: translateX(-10vw); opacity: 0; }
|
|
10% { opacity: 1; }
|
|
90% { opacity: 1; }
|
|
100% { transform: translateX(110vw); opacity: 0; }
|
|
}
|
|
|
|
/* Sine-wave style vertical bouncing for the note itself */
|
|
@keyframes sway {
|
|
0% { transform: translateY(-30px); }
|
|
100% { transform: translateY(30px); }
|
|
}
|