<!DOCTYPE html>
<html lang="en" >
<head>
<meta charset="UTF-8">
<link rel="apple-touch-icon" type="image/png" href="https://i.ibb.co/852XnXC/Icon.png" />
<meta name="apple-mobile-web-app-title" content="Cooli">
<link rel="shortcut icon" type="image/x-icon" href="https://i.ibb.co/852XnXC/Icon.png" />
<link rel="mask-icon" type="" href="https://i.ibb.co/852XnXC/Icon.png" />
<title>Abhiraj's Coin Flip</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css">
<style>
@import url("https://fonts.googleapis.com/css2?family=Comfortaa:wght@700&display=swap");
* {
font-family: "Comfortaa", cursive;
box-sizing: border-box;
}
body {
background: #1c1c1c;
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
height: 100vh;
}
button {
background: none;
border: 2px solid green;
padding: 12px 30px 11px;
text-transform: uppercase;
font-weight: bold;
letter-spacing: 5px;
position: relative;
color: white;
z-index: 0;
font-size: 12px;
outline: none;
}
button:before {
content: "";
display: block;
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 0px;
background: green;
transition: 0.2s;
z-index: -1;
}
button:hover:before {
height: 100%;
}
button:hover {
cursor: pointer;
}
.outcome {
height: 200px;
width: 200px;
background: #555;
margin-bottom: 50px;
border-radius: 50%;
border-style: dotted;
border-color: #1c1c1c;
border-width: 3px;
display: flex;
justify-content: center;
align-items: center;
position: relative;
transform: rotateY(0deg) rotateX(0deg);
transition: 1s;
font-size: 32px;
text-transform: uppercase;
letter-spacing: 3px;
font-weight: bold;
line-height: 0.8;
color: #222;
box-shadow: 0 0 30px black;
}
.outcome.flip {
transition: 1s;
transform: rotateY(720deg) rotateX(720deg);
}
.outcome.toss {
-webkit-animation: toss 0.7s forwards ease-in-out;
animation: toss 0.7s forwards ease-in-out;
}
.outcome:before {
content: "";
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
height: 185px;
width: 185px;
display: block;
background: none;
border: 1px solid rgba(0, 0, 0, 0.25);
border-radius: 50%;
}
.outcome:after {
content: "";
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
height: 190px;
width: 190px;
display: block;
background: none;
border: 1px solid rgba(255, 255, 255, 0.15);
border-radius: 50%;
}
@-webkit-keyframes toss {
0% {
top: 0px;
}
50% {
top: -150px;
}
100% {
top: 0px;
}
}
@keyframes toss {
0% {
top: 0px;
}
50% {
top: -150px;
}
100% {
top: 0px;
}
}
</style>
</head>
<body translate="no" >
<div class="outcome">
</div>
<button id="coinFlipButton" style="font-family: 'Comfortaa', cursive">Flip Coin</button>
<script id="rendered-js" >
var coinFlipButton = document.getElementById("coinFlipButton");
var outcome = document.querySelector(".outcome");
function getRandomNumber() {
return Math.floor(Math.random() * (2 - 1 + 1)) + 1;
}
coinFlipButton.addEventListener("click", function () {
var randomNumber = getRandomNumber();
outcome.textContent = "";
outcome.classList.toggle("flip");
outcome.classList.add("toss");
setTimeout(function () {
if (randomNumber == 1) {
outcome.textContent = "heads";
} else if (randomNumber == 2) {
outcome.textContent = "tails";
}
outcome.classList.remove("toss");
}, 800);
});
</script>
</body>
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.