div+css实现立体长方体进度条动画效果代码

代码语言:html

所属分类:进度条

代码描述:div+css实现立体长方体进度条动画效果代码

代码标签: div css 立体 长方体 进度条 动画

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<!DOCTYPE html>
<html lang="en" >

<head>
  <meta charset="UTF-8">
  


  
  
<style>
@property --val {
  syntax: "<integer>";
  inherits: false;
  initial-value: 0;
}
.progress-field {
  --w: 4rem;
  --l: 15rem;
  --bg: #F9F6EF20;
  --shdw: inset 0 0 1rem #fff2, inset 0 0 2rem #0005;
  --lft: calc(var(--val) / var(--max) * var(--l));
  --bdr: .1rem;
  width: var(--l);
  height: var(--w);
  box-sizing: border-box;
  transform-style: preserve-3d;
  position: relative;
  background-image: linear-gradient(90deg, var(--fill-clr) var(--lft), var(--bg) 0);
  box-shadow: var(--shdw);
  border-radius: var(--bdr);
  transform: rotatex(15deg) rotatey(-50deg) rotatez(2deg);
  animation: rot 5s infinite both alternate, ani-val 10s infinite both alternate;
}

@keyframes rot {
  to {
    transform: rotatex(15deg) rotatey(50deg) rotatez(2deg);
    --val: var(--max);
  }
}
@keyframes ani-val {
  from {
    --val: 0;
  }
  to {
    --val: var(--max);
  }
}
.progress-field .progress {
  border-radius: var(--bdr);
  box-sizing: border-box;
  transform-style: preserve-3d;
  -webkit-appearance: none;
  appearance: none;
  position: relative;
  width: var(--l);
  height: var(--w);
  transform-origin: top;
  transform: rotatex(90deg);
  background-image: linear-gradient(90deg, var(--fill-clr) var(--lft), var(--bg) 0);
}

.progress:before {
  transform-style: preserve-3d;
  box-sizing: border-box;
  position: absolute;
  content: "";
  inset: 0;
  transform: rotatex(90deg);
  transform-origin: left bottom;
  background-color: var(--bg);
  box-shadow: var(--shdw);
  border-radius: var(--bdr);
.........完整代码请登录后点击上方下载按钮下载查看

网友评论0