diff --git a/index.css b/index.css index e513b59..9d2586f 100644 --- a/index.css +++ b/index.css @@ -37,7 +37,8 @@ body { .wishes hr { display: none; } -.wishes .chakra-input, .wishes .chakra-textarea { +.wishes .chakra-input, +.wishes .chakra-textarea { background: #fff; color: #000; } @@ -56,7 +57,7 @@ body { font-size: 72px; margin: 0 auto; display: block; - width: 800px; + width: 735px; } .cake { @@ -158,7 +159,7 @@ body { } .candle { - background-color: #7B020B; + background-color: #7b020b; width: 16px; height: 50px; border-radius: 8px/4px; @@ -246,7 +247,7 @@ body { height: 75px; width: 1px; padding: 1px; - background-color: #FDFD96; + background-color: #fdfd96; display: block; position: absolute; top: 125px; diff --git a/index.php b/index.php index 5089c3b..11c89e2 100644 --- a/index.php +++ b/index.php @@ -1,133 +1,135 @@ - - HAPPY BIRTHDAY PRIME! - - - - - - - - - + + -

Happy Birthday Prime!

-
-
+

Happy Birthday Prime!

+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
- -
- - -
- - - - + + + + + + - - + } + + function createBalloons(num) { + for (var i = num; i > 0; i--) { + var balloon = document.createElement("div"); + balloon.className = "balloon"; + balloon.style.cssText = getRandomStyles(); + balloonContainer.append(balloon); + } + } + + function removeBalloons() { + balloonContainer.style.opacity = 0; + setTimeout(() => { + balloonContainer.remove() + }, 500) + } + + window.addEventListener("load", () => { + createBalloons(30) + }); + + window.addEventListener("click", () => { + removeBalloons(); + }); + + + + \ No newline at end of file diff --git a/index.scss b/index.scss index 3ce76cd..05b2fd2 100644 --- a/index.scss +++ b/index.scss @@ -1,5 +1,5 @@ body { - background: black !important; + background: black !important; } .wishes { @@ -18,21 +18,20 @@ body { .chakra-stack { order: 1; font-family: "Patrick Hand", cursive; - font-weight: 400; - font-style: normal; - color:#fff; - - - .css-itvw0n { - font-size:24px !important; - } + font-weight: 400; + font-style: normal; + color: #fff; + + .css-itvw0n { + font-size: 24px !important; + } } .css-1h4ws66 { - display:none; + display: none; .chakra-text { - display:none; + display: none; } } @@ -44,9 +43,10 @@ body { display: none; } - .chakra-input, .chakra-textarea { + .chakra-input, + .chakra-textarea { background: #fff; - color:#000 + color: #000; } .css-xdp1c1 { @@ -54,19 +54,19 @@ body { } .chakra-button { - color:#000 + color: #000; } } .title { - color:#fff; + color: #fff; font-family: "Pacifico", cursive; - font-weight: 400; - font-style: normal; - font-size:72px; - margin:0 auto; - display: block; - width: 800px; + font-weight: 400; + font-style: normal; + font-size: 72px; + margin: 0 auto; + display: block; + width: 735px; } @mixin foodColoring($color) { @@ -125,9 +125,15 @@ body { @include foodColoring(#553c13); } -.layer-top { top: 0px; } -.layer-middle { top: 33px; } -.layer-bottom { top: 66px; } +.layer-top { + top: 0px; +} +.layer-middle { + top: 33px; +} +.layer-bottom { + top: 66px; +} .icing { top: 2px; @@ -185,7 +191,7 @@ body { } .candle { - background-color: #7B020B; + background-color: #7b020b; width: 16px; height: 50px; border-radius: 8px / 4px; @@ -201,7 +207,7 @@ body { width: 16px; height: 8px; border-radius: 50%; - background-color: lighten(#7B020B, 10%); + background-color: lighten(#7b020b, 10%); } } @@ -227,42 +233,47 @@ body { @keyframes flicker { 0% { transform: skewX(5deg); - box-shadow: + box-shadow: 0 0 10px rgba(orange, 0.2), 0 0 20px rgba(orange, 0.2), 0 0 60px rgba(orange, 0.2), - 0 0 80px rgba(orange, 0.2) } + 0 0 80px rgba(orange, 0.2); + } 25% { transform: skewX(-5deg); box-shadow: 0 0 10px rgba(orange, 0.5), 0 0 20px rgba(orange, 0.5), 0 0 60px rgba(orange, 0.5), - 0 0 80px rgba(orange, 0.5) } + 0 0 80px rgba(orange, 0.5); + } 50% { transform: skewX(10deg); box-shadow: 0 0 10px rgba(orange, 0.3), 0 0 20px rgba(orange, 0.3), 0 0 60px rgba(orange, 0.3), - 0 0 80px rgba(orange, 0.3) } + 0 0 80px rgba(orange, 0.3); + } 75% { transform: skewX(-10deg); box-shadow: 0 0 10px rgba(orange, 0.4), 0 0 20px rgba(orange, 0.4), 0 0 60px rgba(orange, 0.4), - 0 0 80px rgba(orange, 0.4) } + 0 0 80px rgba(orange, 0.4); + } 100% { transform: skewX(5deg); box-shadow: 0 0 10px rgba(orange, 0.5), 0 0 20px rgba(orange, 0.5), 0 0 60px rgba(orange, 0.5), - 0 0 80px rgba(orange, 0.5) } + 0 0 80px rgba(orange, 0.5); + } } - #balloon-container { +#balloon-container { height: 100vh; padding: 1em; box-sizing: border-box; @@ -271,52 +282,56 @@ body { overflow: hidden; transition: opacity 500ms; position: fixed; - top:0; - } + top: 0; +} - .audio { +.audio { position: absolute; left: 50%; margin-left: -137px; top: 450px; - } - - .balloon { +} + +.balloon { height: 125px; width: 105px; border-radius: 75% 75% 70% 70%; position: relative; - } - - .balloon:before { +} + +.balloon:before { content: ""; height: 75px; width: 1px; padding: 1px; - background-color: #FDFD96; + background-color: #fdfd96; display: block; position: absolute; top: 125px; left: 0; right: 0; margin: auto; - } - - .balloon:after { - content: "▲"; - text-align: center; - display: block; - position: absolute; - color: inherit; - top: 120px; - left: 0; - right: 0; - margin: auto; - } - - @keyframes float { - from {transform: translateY(100vh); - opacity: 1;} - to {transform: translateY(-300vh); - opacity: 0;} - } \ No newline at end of file +} + +.balloon:after { + content: "▲"; + text-align: center; + display: block; + position: absolute; + color: inherit; + top: 120px; + left: 0; + right: 0; + margin: auto; +} + +@keyframes float { + from { + transform: translateY(100vh); + opacity: 1; + } + to { + transform: translateY(-300vh); + opacity: 0; + } +}