Implementation of CSS heart-shaped loading animation source code

Implementation of CSS heart-shaped loading animation source code

Without further ado, let me show you the code. The code is very simple and you will understand it after studying it. If you have any questions, you can ask me.

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title></title>
    <style type="text/css">
      .heart-loading {
        margin-top: 120px;
        width: 200px;
        height: 200px;
      }

      ul {
        list-style: none;
        display: flex;
        justify-content: space-between;
        width: 150px;
        height: 10px;
        /* The idea of ​​making heart shape and strip shape is the same, but the height of each strip is different*/
      }
      li {
        --count: 9;
        --rgb: calc(var(--index) / var(--count) * .5turn);
        /* Do not set the delay too slow. If it is too slow, the heart shape will not be visible. Adjust the delay and animation duration at the same time*/
        --time: calc((var(--index) - 1) * 150ms);
        border-radius: 5px;
        width: 10px;
        height: 10px;
        background-color: #003BB3;
        /* Using the fiter function can make the color gradient very beautiful*/
        filter: hue-rotate(var(--rgb));
        /* The following is the animation duration*/
        animation-duration: 2.5s;
        animation-delay: var(--time);
        animation-iteration-count: infinite;
      }
      .line-1,
      .line-9 {
        animation-name: line-move-1;
      }
      .line-2,
      .line-8 {
        animation-name: line-move-2;
      }
      .line-3,
      .line-7 {
        animation-name: line-move-3;
      }
      .line-4,
      .line-6 ​​{
        animation-name: line-move-4;
      }
      .line-5 {
        animation-name: line-move-5;
      }
      /* Symmetrical animations should be at the same height so that the heart shape can be seen*/
      @keyframes line-move-1 {

        0%,
        10%,
        90%,
        100% {
          height: 10px;
        }

        45%,
        55% {
          height: 30px;
          transform: translate3d(0, -15px, 0);
        }
      }

      @keyframes line-move-2 {

        0%,
        10%,
        90%,
        100% {
          height: 10px;
        }

        45%,
        55% {
          height: 60px;
          transform: translate3d(0, -30px, 0);
        }
      }

      @keyframes line-move-3 {

        0%,
        10%,
        90%,
        100% {
          height: 10px;
        }

        45%,
        55% {
          height: 80px;
          transform: translate3d(0, -40px, 0);
        }
      }

      @keyframes line-move-4 {

        0%,
        10%,
        90%,
        100% {
          height: 10px;
        }

        45%,
        55% {
          height: 90px;
          transform: translate3d(0, -30px, 0);
        }
      }

      @keyframes line-move-5 {

        0%,
        10%,
        90%,
        100% {
          height: 10px;
        }

        45%,
        55% {
          height: 90px;
          transform: translate3d(0, -20px, 0);
        }
      }
    </style>
  </head>
  <body>
    <div class="heart-loading">
      <ul>
        <li class="line-1" style="--index: 1"></li>
        <li class="line-2" style="--index: 2"></li>
        <li class="line-3" style="--index: 3"></li>
        <li class="line-4" style="--index: 4"></li>
        <li class="line-5" style="--index: 5"></li>
        <li class="line-6" style="--index: 6"></li>
        <li class="line-7" style="--index: 7"></li>
        <li class="line-8" style="--index: 8"></li>
        <li class="line-9" style="--index: 9"></li>
      </ul>
    </div>
  </body>
</html> 

This is the end of this article about the implementation of the CSS heart-shaped loading animation source code. For more related CSS heart-shaped loading animation content, please search 123WORDPRESS.COM’s previous articles or continue to browse the following related articles. I hope everyone will support 123WORDPRESS.COM in the future!

<<:  A simple way to call desktop exe programs on a web page

>>:  An analysis of div+float, a very important concept in website design

Recommend

CSS3 realizes particle animation effect when matching kings

When coding, you will find that many things have ...

Detailed tutorial on how to automatically install CentOS7.6 using PXE

1. Demand The base has 300 new servers, and needs...

MySql development of automatic synchronization table structure

Development Pain Points During the development pr...

JavaScript's unreliable undefined

undefined In JavaScript, if we want to determine ...

JavaScript to implement dynamic digital clock

This article shares the specific code for impleme...

How to rename the table in MySQL and what to pay attention to

Table of contents 1. Rename table method 2. Notes...

Why is UTF-8 not recommended in MySQL?

I recently encountered a bug where I was trying t...

Examples of using MySQL pessimistic locking and optimistic locking

Pessimistic Lock Pessimistic lock, considers the ...

A brief introduction to Tomcat's overall structure

Tomcat is widely known as a web container. It has...

Writing daily automatic backup of MySQL database using mysqldump in Centos7

1. Requirements: Database backup is particularly ...

Dockerfile text file usage example analysis

Dockerfile is a text file used to build an image....

Understanding of haslaylout and bfc parsing

1. haslayout and bfc are IE-specific and standard ...

JS ES new feature of variable decoupling assignment

Table of contents 1. Decoupled assignment of arra...

Analyzing ab performance test results under Apache

I have always used Loadrunner to do performance t...