弄一个好玩的自定义加载动画(超级轻量级)

2020-05-13  本文已影响0人  不忘初心_d

效果图:

SDGIF_Rusult_1.gif

代码

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <style type="text/css">
            .loading {
              position: relative;
              width: 2.5em;
              height: 2.5em;
              transform: rotate(165deg);
            }
            .loading:before, .loading:after {
              content: '';
              position: absolute;
              top: 50%;
              left: 50%;
              display: block;
              width: 0.5em;
              height: 0.5em;
              border-radius: 0.25em;
              transform: translate(-50%, -50%);
            }
            .loading:before {
              animation: before 2s infinite;
            }
            .loading:after {
              animation: after 2s infinite;
            }
            
            @keyframes before {
              0% {
                width: 0.5em;
                box-shadow: 1em -0.5em rgba(225, 20, 98, 0.75), -1em 0.5em rgba(111, 202, 220, 0.75);
              }
              35% {
                width: 2.5em;
                box-shadow: 0 -0.5em rgba(225, 20, 98, 0.75), 0 0.5em rgba(111, 202, 220, 0.75);
              }
              70% {
                width: 0.5em;
                box-shadow: -1em -0.5em rgba(225, 20, 98, 0.75), 1em 0.5em rgba(111, 202, 220, 0.75);
              }
              100% {
                box-shadow: 1em -0.5em rgba(225, 20, 98, 0.75), -1em 0.5em rgba(111, 202, 220, 0.75);
              }
            }
            @keyframes after {
              0% {
                height: 0.5em;
                box-shadow: 0.5em 1em rgba(61, 184, 143, 0.75), -0.5em -1em rgba(233, 169, 32, 0.75);
              }
              35% {
                height: 2.5em;
                box-shadow: 0.5em 0 rgba(61, 184, 143, 0.75), -0.5em 0 rgba(233, 169, 32, 0.75);
              }
              70% {
                height: 0.5em;
                box-shadow: 0.5em -1em rgba(61, 184, 143, 0.75), -0.5em 1em rgba(233, 169, 32, 0.75);
              }
              100% {
                box-shadow: 0.5em 1em rgba(61, 184, 143, 0.75), -0.5em -1em rgba(233, 169, 32, 0.75);
              }
            }
            .loading {
              position: absolute;
              top: calc(50% - 1.25em);
              left: calc(50% - 1.25em);
            }
        </style>
    </head>
    <body>
        <div class="loading"></div>
    </body>
</html>


上一篇下一篇

猜你喜欢

热点阅读