<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
Run Pen

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.