<body class="playground">
<section id="ball" onclick="onBounce()">
<section class="ball">
<section class="ball__stripe--right-rounded" /></section>
<section class="ball__stripe"></section>
<section class="ball__stripe--vertical"></section>
<section class="ball__stripe--left-rounded"></section>
</section>
</section>
</body>
$ballSize: 130px;
.ball {
display: flex;
justify-content: center;
align-items: center;
height: $ballSize;
width: $ballSize;
margin: 50px auto;
position: relative;
border-radius: 50%;
background: linear-gradient(#E65100, #490A03);
box-shadow: 20px 70px 15px 0px #222;
overflow: hidden;
transform: rotate(0.5deg);
animation-name: bounce;
animation-duration: 2s;
animation-iteration-count: infinite;
}
@keyframes bounce{
0% {
top: 0px;
}
50% {
top: 249px;
width: 130px;
height: 70px;
}
100% {
top: 0px;
}
}
.ball__stripe {
position: absolute;
width: 100%;
height: 2px;
background-color: black;
}
.ball__stripe--vertical {
width: 3px;
height: 100%;
margin: 0 15px;
background-color: black;
}
.ball__stripe--left-rounded {
width: 250px;
height: 80%;
border: 2px solid black;
border-top-left-radius: 100%;
border-bottom-left-radius: 100%;
border-right: 280px;
background-color: transparent;
}
.ball__stripe--right-rounded {
width: 250px;
height: 80%;
border: 2px solid black;
border-left: 280px;
border-top-right-radius: 100%;
border-bottom-right-radius: 100%;
background-color: transparent;
}
.playground {
display: flex;
flex-direction: column;
flex-wrap: wrap;
align-items: center;
justify-content: center;
width: 100%;
background-color: grey;
}
View Compiled
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.