Template:BibisiLauncher/style.css: Difference between revisions
From SNCApedia, the shit nobody cares about encyclopedia
Jump to navigationJump to search
SomebodyRum (talk | contribs) No edit summary |
SomebodyRum (talk | contribs) No edit summary |
||
| Line 1: | Line 1: | ||
/* The | /* ============================== | ||
BIBISI LAUNCHER | |||
Pure CSS — no JS required | |||
Checkbox toggle trick | |||
============================== */ | |||
/* Hide the actual checkbox */ | |||
#rocket-toggle { | |||
display: none; | |||
} | |||
/* The visible button label */ | |||
.launcher-btn { | .launcher-btn { | ||
display: inline-block; | display: inline-block; | ||
| Line 8: | Line 19: | ||
border-radius: 5px; | border-radius: 5px; | ||
cursor: pointer; | cursor: pointer; | ||
-webkit-user-select: none; | |||
-moz-user-select: none; | |||
-ms-user-select: none; | |||
user-select: none; | user-select: none; | ||
} | } | ||
.launcher-btn:hover { background: #f44; } | .launcher-btn:hover { background: #f44; } | ||
/* | /* Fixed frame anchored to bottom center */ | ||
.spawn-frame { | .spawn-frame { | ||
position: fixed; | position: fixed; | ||
bottom: -50px; | bottom: -50px; | ||
left: 50%; | left: 50%; | ||
margin-left: -25px; | margin-left: -25px; | ||
width: 50px; | width: 50px; | ||
text-align: center; | text-align: center; | ||
| Line 26: | Line 38: | ||
} | } | ||
/* | /* All animation elements hidden by default */ | ||
.rocket-assembly, .smoke, .fire { | .rocket-assembly, | ||
.smoke, | |||
.fire { | |||
position: absolute; | position: absolute; | ||
left: 0; | left: 0; | ||
| Line 33: | Line 47: | ||
} | } | ||
.fire { | |||
/* | top: 40px; | ||
width: 100%; | |||
font-size: 30px; | |||
# | } | ||
.f1 { animation-delay: 0s; } | |||
.f2 { animation-delay: 0.1s; } | |||
.f3 { animation-delay: 0.2s; } | |||
.smoke { | |||
top: 10px; | |||
width: 100%; | |||
z-index: -1; | |||
} | |||
.s1 { margin-left: -15px; animation-delay: 0s; } | |||
.s2 { margin-left: 15px; animation-delay: 0.1s; } | |||
.s3 { margin-top: 10px; animation-delay: 0.2s; } | |||
/* ============================== | |||
TRIGGERS — checkbox checked | |||
============================== */ | |||
#rocket-toggle:checked ~ .spawn-frame .rocket-assembly { | |||
visibility: visible; | visibility: visible; | ||
animation: rocket-fly 2s linear forwards; | animation: rocket-fly 2s linear forwards; | ||
} | } | ||
# | #rocket-toggle:checked ~ .spawn-frame .smoke { | ||
visibility: visible; | visibility: visible; | ||
animation: smoke-poof 0.8s ease-out forwards; | animation: smoke-poof 0.8s ease-out forwards; | ||
} | } | ||
# | #rocket-toggle:checked ~ .spawn-frame .fire { | ||
visibility: visible; | visibility: visible; | ||
animation: fire-burn 0.4s linear infinite; | animation: fire-burn 0.4s linear infinite; | ||
} | } | ||
/* | /* ============================== | ||
ANIMATIONS | |||
============================== */ | |||
@keyframes rocket-fly { | @keyframes rocket-fly { | ||
0% { transform: translateY(0); } | 0% { transform: translateY(0); } | ||
100% { transform: translateY(-120vh); } | 100% { transform: translateY(-120vh); } | ||
} | } | ||
@keyframes fire-burn { | @keyframes fire-burn { | ||
| Line 74: | Line 93: | ||
100% { transform: translateY(40px) scale(0); opacity: 0; } | 100% { transform: translateY(40px) scale(0); opacity: 0; } | ||
} | } | ||
@keyframes smoke-poof { | @keyframes smoke-poof { | ||
Revision as of 10:27, 11 April 2026
/* ==============================
BIBISI LAUNCHER
Pure CSS — no JS required
Checkbox toggle trick
============================== */
/* Hide the actual checkbox */
#rocket-toggle {
display: none;
}
/* The visible button label */
.launcher-btn {
display: inline-block;
padding: 8px 16px;
background: #d33;
color: white;
font-weight: bold;
border-radius: 5px;
cursor: pointer;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.launcher-btn:hover { background: #f44; }
/* Fixed frame anchored to bottom center */
.spawn-frame {
position: fixed;
bottom: -50px;
left: 50%;
margin-left: -25px;
width: 50px;
text-align: center;
font-size: 50px;
z-index: 9999;
}
/* All animation elements hidden by default */
.rocket-assembly,
.smoke,
.fire {
position: absolute;
left: 0;
visibility: hidden;
}
.fire {
top: 40px;
width: 100%;
font-size: 30px;
}
.f1 { animation-delay: 0s; }
.f2 { animation-delay: 0.1s; }
.f3 { animation-delay: 0.2s; }
.smoke {
top: 10px;
width: 100%;
z-index: -1;
}
.s1 { margin-left: -15px; animation-delay: 0s; }
.s2 { margin-left: 15px; animation-delay: 0.1s; }
.s3 { margin-top: 10px; animation-delay: 0.2s; }
/* ==============================
TRIGGERS — checkbox checked
============================== */
#rocket-toggle:checked ~ .spawn-frame .rocket-assembly {
visibility: visible;
animation: rocket-fly 2s linear forwards;
}
#rocket-toggle:checked ~ .spawn-frame .smoke {
visibility: visible;
animation: smoke-poof 0.8s ease-out forwards;
}
#rocket-toggle:checked ~ .spawn-frame .fire {
visibility: visible;
animation: fire-burn 0.4s linear infinite;
}
/* ==============================
ANIMATIONS
============================== */
@keyframes rocket-fly {
0% { transform: translateY(0); }
100% { transform: translateY(-120vh); }
}
@keyframes fire-burn {
0% { transform: translateY(0) scale(1); opacity: 1; }
100% { transform: translateY(40px) scale(0); opacity: 0; }
}
@keyframes smoke-poof {
0% { transform: scale(0.5); opacity: 1; }
100% { transform: scale(3); opacity: 0; }
}