Template:OMGSISA/styles.css: Difference between revisions
From SNCApedia, the shit nobody cares about encyclopedia
Jump to navigationJump to search
SomebodyRum (talk | contribs) mNo edit summary |
SomebodyRum (talk | contribs) mNo edit summary |
||
| Line 2: | Line 2: | ||
.omgsisa-container { | .omgsisa-container { | ||
position: relative; | position: relative; | ||
overflow: hidden | overflow: hidden; | ||
border: 3px solid #d177ba; | border: 3px solid #d177ba; | ||
border-radius: 10px; | border-radius: 10px; | ||
| Line 14: | Line 12: | ||
} | } | ||
/* Background sliding and beating */ | /* Background sliding and beating using your ORIGINAL code! */ | ||
.omgsisa-bg { | .omgsisa-bg { | ||
position: absolute; | position: absolute; | ||
top: - | /* Extends beyond the borders so when it scales down, it doesn't show blank edges */ | ||
top: -20%; left: -20%; right: -20%; bottom: -20%; | |||
background-color: pink; | |||
background-size: 100px 100px; | |||
background-repeat: repeat; | |||
background-image: | |||
radial-gradient(circle at 37% 42%, red 17%, rgba(255, 255, 255, 0) 17%), | |||
radial-gradient(circle at 63% 42%, red 17%, rgba(255, 255, 255, 0) 17%), | |||
linear-gradient(to top left, pink 37%, rgba(255, 255, 255, 0) 37%), | |||
linear-gradient(to top right, pink 37%, rgba(255, 255, 255, 0) 37%), | |||
radial-gradient(circle at 50% 58%, red 30%, rgba(255, 255, 255, 0) 30%); | |||
z-index: 0; | z-index: 0; | ||
/* | /* Runs both your slide and a heartbeat scale */ | ||
animation: bg-slide | animation: bg-slide 10s infinite linear, bg-beat 1.5s infinite ease-in-out; | ||
} | } | ||
@keyframes bg-slide { | @keyframes bg-slide { | ||
0% { | 0% { background-position: 0 0; } | ||
100% { | 100% { background-position: 100px 100px; } | ||
} | } | ||
@keyframes bg-beat { | @keyframes bg-beat { | ||
0%, 100% { | 0%, 100% { transform: scale(1); } | ||
15% { transform: scale(1.1); } | |||
30% { transform: scale(1); } | |||
45% { transform: scale(1.1); } | |||
} | } | ||
/* | /* Layout - Space-between pushes images to the corners perfectly */ | ||
.omgsisa-inner { | .omgsisa-inner { | ||
position: relative; | position: relative; | ||
z-index: 2; | z-index: 2; | ||
display: flex; | display: flex; | ||
flex-flow: row | flex-flow: row nowrap; | ||
align-items: center; | align-items: center; | ||
justify-content: | justify-content: space-between; /* <--- This eliminates the dead space */ | ||
gap: 15px; | gap: 15px; | ||
width: 100%; | |||
} | } | ||
| Line 50: | Line 58: | ||
text-align: center; | text-align: center; | ||
flex: 1; | flex: 1; | ||
} | |||
.omgsisa-image { | |||
flex: 0 0 auto; | |||
} | } | ||
| Line 74: | Line 86: | ||
.omgsisa-audio { | .omgsisa-audio { | ||
margin-top: 8px; | margin-top: 8px; | ||
display: flex; | display: flex; | ||
justify-content: center; | justify-content: center; | ||
| Line 80: | Line 92: | ||
/* ------------------------------------- | /* ------------------------------------- | ||
THROWN ITEMS (Parabola | THROWN ITEMS (Contained Parabola) | ||
-------------------------------------- */ | -------------------------------------- */ | ||
.omgsisa-item { | .omgsisa-item { | ||
position: absolute; | position: absolute; | ||
top: | top: 85%; /* Starts closer to the bottom edge */ | ||
font-size: 24px; | font-size: 24px; | ||
opacity: 0; | opacity: 0; | ||
| Line 94: | Line 106: | ||
0% { transform: translate(0, 0) rotate(0deg); opacity: 0; } | 0% { transform: translate(0, 0) rotate(0deg); opacity: 0; } | ||
10% { opacity: 1; } | 10% { opacity: 1; } | ||
50% { transform: translate(30px, -60px) rotate(180deg); opacity: 1; } /* Doesn't go up too high anymore */ | |||
90% { opacity: 1; } | |||
100% { transform: translate(60px, | 100% { transform: translate(60px, 20px) rotate(360deg); opacity: 0; } /* Falls back down slightly */ | ||
} | } | ||
| Line 107: | Line 119: | ||
/* ------------------------------------- | /* ------------------------------------- | ||
FLOATING EMOTIONS ( | FLOATING EMOTIONS (Contained Upward Float) | ||
-------------------------------------- */ | -------------------------------------- */ | ||
.omgsisa-emotion { | .omgsisa-emotion { | ||
position: absolute; | position: absolute; | ||
top: | top: 85%; | ||
font-size: 26px; | font-size: 26px; | ||
opacity: 0; | opacity: 0; | ||
| Line 121: | Line 133: | ||
0% { transform: translateY(0) scale(0.8); opacity: 0; } | 0% { transform: translateY(0) scale(0.8); opacity: 0; } | ||
20% { opacity: 0.8; } | 20% { opacity: 0.8; } | ||
70% { opacity: 0.8; } | |||
100% { transform: translateY(- | 100% { transform: translateY(-90px) scale(1.2); opacity: 0; } /* Disappears before leaving the frame */ | ||
} | } | ||
Revision as of 10:28, 22 April 2026
/* Container Box */
.omgsisa-container {
position: relative;
overflow: hidden;
border: 3px solid #d177ba;
border-radius: 10px;
box-shadow: inset 0 0 10px rgba(209, 119, 186, 0.8), 0 4px 6px rgba(0,0,0,0.1);
margin: 10px auto;
max-width: 900px;
padding: 10px 20px;
z-index: 1;
}
/* Background sliding and beating using your ORIGINAL code! */
.omgsisa-bg {
position: absolute;
/* Extends beyond the borders so when it scales down, it doesn't show blank edges */
top: -20%; left: -20%; right: -20%; bottom: -20%;
background-color: pink;
background-size: 100px 100px;
background-repeat: repeat;
background-image:
radial-gradient(circle at 37% 42%, red 17%, rgba(255, 255, 255, 0) 17%),
radial-gradient(circle at 63% 42%, red 17%, rgba(255, 255, 255, 0) 17%),
linear-gradient(to top left, pink 37%, rgba(255, 255, 255, 0) 37%),
linear-gradient(to top right, pink 37%, rgba(255, 255, 255, 0) 37%),
radial-gradient(circle at 50% 58%, red 30%, rgba(255, 255, 255, 0) 30%);
z-index: 0;
/* Runs both your slide and a heartbeat scale */
animation: bg-slide 10s infinite linear, bg-beat 1.5s infinite ease-in-out;
}
@keyframes bg-slide {
0% { background-position: 0 0; }
100% { background-position: 100px 100px; }
}
@keyframes bg-beat {
0%, 100% { transform: scale(1); }
15% { transform: scale(1.1); }
30% { transform: scale(1); }
45% { transform: scale(1.1); }
}
/* Layout - Space-between pushes images to the corners perfectly */
.omgsisa-inner {
position: relative;
z-index: 2;
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: space-between; /* <--- This eliminates the dead space */
gap: 15px;
width: 100%;
}
.omgsisa-text {
text-align: center;
flex: 1;
}
.omgsisa-image {
flex: 0 0 auto;
}
/* Title & Audio Styling */
.omgsisa-title {
font-size: 140%;
font-weight: bold;
color: white;
text-shadow:
-2px -2px 0 #d177ba, 2px -2px 0 #d177ba,
-2px 2px 0 #d177ba, 2px 2px 0 #d177ba,
0px 4px 6px rgba(209, 119, 186, 0.8);
margin-bottom: 3px;
}
.omgsisa-title a { color: white; text-decoration: none; }
.omgsisa-title a:hover { text-decoration: underline; }
.omgsisa-subtitle {
font-size: 110%;
color: white;
font-weight: bold;
text-shadow: 1px 1px 3px rgba(209, 119, 186, 0.8);
}
.omgsisa-audio {
margin-top: 8px;
display: flex;
justify-content: center;
}
/* -------------------------------------
THROWN ITEMS (Contained Parabola)
-------------------------------------- */
.omgsisa-item {
position: absolute;
top: 85%; /* Starts closer to the bottom edge */
font-size: 24px;
opacity: 0;
z-index: 1;
animation: item-throw linear infinite;
}
@keyframes item-throw {
0% { transform: translate(0, 0) rotate(0deg); opacity: 0; }
10% { opacity: 1; }
50% { transform: translate(30px, -60px) rotate(180deg); opacity: 1; } /* Doesn't go up too high anymore */
90% { opacity: 1; }
100% { transform: translate(60px, 20px) rotate(360deg); opacity: 0; } /* Falls back down slightly */
}
.i1 { left: 10%; animation-duration: 3s; animation-delay: 0s; }
.i2 { left: 30%; animation-duration: 4s; animation-delay: 1.5s; }
.i3 { left: 50%; animation-duration: 3.5s; animation-delay: 0.5s; }
.i4 { left: 70%; animation-duration: 4.5s; animation-delay: 2s; }
.i5 { left: 85%; animation-duration: 3.2s; animation-delay: 1s; }
.i6 { left: 20%; animation-duration: 3.8s; animation-delay: 2.5s; }
/* -------------------------------------
FLOATING EMOTIONS (Contained Upward Float)
-------------------------------------- */
.omgsisa-emotion {
position: absolute;
top: 85%;
font-size: 26px;
opacity: 0;
z-index: 1;
animation: emotion-float linear infinite;
}
@keyframes emotion-float {
0% { transform: translateY(0) scale(0.8); opacity: 0; }
20% { opacity: 0.8; }
70% { opacity: 0.8; }
100% { transform: translateY(-90px) scale(1.2); opacity: 0; } /* Disappears before leaving the frame */
}
.e1 { left: 15%; animation-duration: 5s; animation-delay: 0.2s; }
.e2 { left: 40%; animation-duration: 6s; animation-delay: 1.2s; }
.e3 { left: 65%; animation-duration: 4.5s; animation-delay: 0.8s; }
.e4 { left: 90%; animation-duration: 5.5s; animation-delay: 2.2s; }