首先漓库,Html
<ul class="heart">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
CSS
/* 心形加載樣式 */
.heart {
display: flex;
margin: 10rem auto;
/* transform: translate(25%, 50%); */
}
.heart li {
list-style: none;
height: 20px;
width: 20px;
margin-left: 8px;
border-radius: 5rem;
/* background: red; */
}
li:nth-child(1) {
background-color: #f62e74;
animation: animate0 4s infinite;
}
li:nth-child(2) {
background-color: #f45330;
animation: animate1 4s infinite;
animation-delay: 0.15s;
}
li:nth-child(3) {
background-color: #ffc883;
animation: animate2 4s infinite;
animation-delay: 0.3s;
}
li:nth-child(4) {
background-color: #30d268;
animation: animate3 4s infinite;
animation-delay: 0.45s;
}
li:nth-child(5) {
background-color: #006cb4;
animation: animate4 4s infinite;
animation-delay: 0.6s;
}
li:nth-child(6) {
background-color: #784697;
animation: animate3 4s infinite;
animation-delay: 0.75s;
}
li:nth-child(7) {
background-color: #ffc883;
animation: animate2 4s infinite;
animation-delay: 0.9s;
}
li:nth-child(8) {
background-color: #f45330;
animation: animate1 4s infinite;
animation-delay: 1.05s;
}
li:nth-child(9) {
background-color: #f62e74;
animation: animate0 4s infinite;
animation-delay: 1.2s;
}
@keyframes animate0 {
30%,
50% {
height: 60px;
transform: translateY(-30px);
}
75%,
100% {
height: 20px;
transform: translateY(0);
}
}
@keyframes animate1 {
30%,
50% {
height: 125px;
transform: translateY(-62.5px);
}
75%,
100% {
height: 20px;
transform: translateY(0);
}
}
@keyframes animate2 {
30%,
50% {
height: 160px;
transform: translateY(-75px);
}
75%,
100% {
height: 20px;
transform: translateY(0);
}
}
@keyframes animate3 {
30%,
50% {
height: 180px;
transform: translateY(-60px);
}
75%,
100% {
height: 20px;
transform: translateY(0);
}
}
@keyframes animate4 {
30%,
50% {
height: 190px;
transform: translateY(-45px);
}
75%,
100% {
height: 20px;
transform: translateY(0);
}
}
/* 心形加載樣式結(jié)束 */
重點(diǎn)在keyframes的進(jìn)度雷逆,在50%~75%間有暫停,暫停之后再執(zhí)行收回操作