<div class="container">
<div class="icecream">
<div class="flavor">
<div class="flavours"></div>
</div>
<div class="stick"></div>
</div>
</div>
body,
html {
height: 100%;
}
.container {
height: 100%;
display: box;
display: flexbox;
display: flex;
box-align: center;
flex-align: center;
align-items: center;
box-pack: center;
flex-pack: center;
justify-content: center;
background: #33485F;
}
.icecream > .flavor {
position: relative;
width: 190px;
height: 260px;
border-radius: 80px 80px 10px 10px;
overflow: hidden;
}
.icecream > .flavor:after {
content: '';
position: absolute;
left: 21px;
bottom: 20px;
width: 20px;
height: 170px;
border-radius: 50px;
background: rgba(255, 255, 255, 0.5);
}
.icecream > .flavor > .flavours {
position: relative;
top: 0%;
left: -20%;
width: 140%;
height: 120%;
background-image: gradient(linear, left bottom, left top, color-stop(25%, #f63a99), color-stop(25%, #30dcf6), color-stop(25%, #30dcf6), color-stop(50%, #30dcf6), color-stop(50%, #f2d200), color-stop(50%, #f2d200), color-stop(75%, #f2d200), color-stop(75%, #70ca5c));
background-image: linear-gradient(0deg, #f63a99 25%, #30dcf6 25%, #30dcf6 25%, #30dcf6 50%, #f2d200 50%, #f2d200 50%, #f2d200 75%, #70ca5c 75%);
background-position: 0px 0px;
background-repeat: repeat-y;
animation: flavours 5s linear infinite;
animation: flavours 5s linear infinite;
transform: rotate(155deg);
transform: rotate(155deg);
}
.icecream > .stick {
width: 57px;
height: 86px;
background: #E09C5F;
border-radius: 0 0 25px 25px;
display: block;
margin: 0 auto;
}
.icecream > .stick:after {
display: block;
content: '';
width: 100%;
height: 24px;
background: #8D613B;
}
@-webkit-keyframes flavours {
to {
background-position: 0 -100vh;
}
}
@keyframes flavours {
to {
background-position: 0 -100vh;
}
}