纯css实现旋转的正方形加载效果
代码语言:html
所属分类:加载滚动
代码描述:纯css实现旋转的正方形加载效果
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <style> * { box-sizing: border-box; } :root { --size: 30; --speed: 5; } body { min-height: 100vh; display: -webkit-box; display: flex; -webkit-box-align: center; align-items: center; -webkit-box-pack: center; justify-content: center; background: #404040; } .scene { -webkit-transform: translate(0, -97%); transform: translate(0, -97%); position: relative; height: calc(var(--size) * 1vmin); width: calc(var(--size) * 1vmin); min-width: 100px; min-height: 100px; } .square { height: calc(var(--size) * 1vmin); width: calc(var(--size) * 1vmin); position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%) scale(0.75) translate(0, 32.5%); transform: translate(-50%, -50%) scale(0.75) translate(0, 32.5%); } .square:before { content: ''; position: absolute; background: var(--bg); height: 100%; width: 100%; -webkit-animation: traverse calc(((1 / var(--divider)) * var(--speed, 1)) * 1s) calc(((1 / var(--divider)) * var(--speed, 1)) * -0.075s) infinite ease; animation: traverse calc(((1 / var(--divider)) * var(--speed, 1)) * 1s) calc(((1 / var(--divider)) * var(--speed, 1)) * -0.075s) infinite ease; } @-webkit-keyframes traverse { 0%, 100% { -webkit-transform: translate(-100%, 0); transform: translate(-100%, 0); } 25% { -webkit-transform: translate(100%, 0); transform: translate(100%, 0); } 50% { -webkit-transform: translate(100%, 200%); transform: translate(100%, 200%); } 75% { -webkit-transform: translate(-100%, 200%); transform: translate(-100%, 200%); } } @keyframes traverse { 0%, 100% { -webkit-transform: translate(-100%, 0); transform: translate(-100%, 0); } 25% { -webkit-transform: translate(100%, 0); transform: translate(100%, 0); } 50% { -webkit-transform: translate(100%, 200%); transform: translate(100%, 200%); } 75% { -webkit-transform: translate(-100%, 200%); transform: translate(-100%, 200%); } } </style> </head> <body translate="no"> <div class="scene"> <div class="square" style="--index: 24; --bg: hsl(0, 0%, 0%); --divider: 1;"> <div class="square" style="--index: 23; --bg: hsl(0, 0%, 100%); --divider: 2;"> <div class="square" style="--index: 22; --bg: hsl(0, 0%, 0%); --divider: 3;&qu.........完整代码请登录后点击上方下载按钮下载查看
网友评论0