css实现三维环中环小球跳动旋转动画效果代码

代码语言:html

所属分类:动画

代码描述:css实现三维环中环小球跳动旋转动画效果代码

代码标签: 中环 小球 跳动 旋转 动画 效果

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


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

<head>

  <meta charset="UTF-8">

  

  
<style>
*, *::before, *::after {
    padding: 0;
    margin: 0 auto;
    box-sizing: border-box;
}

body {
  background-color: #111;
  color: #fff;
  min-height: 100vh;
  display: grid;
  place-items: center;
}
body {
  background-image: radial-gradient(circle, #111, #000 400px);
  overflow: hidden;
  perspective: 750px;
}

.scene {
  position: relative;
  transform-style: preserve-3d;
  -webkit-animation: sceneRotate 45s infinite linear;
          animation: sceneRotate 45s infinite linear;
}
@-webkit-keyframes sceneRotate {
  from {
    transform: rotateX(0deg) rotateY(0deg);
  }
  to {
    transform: rotateX(360deg) rotateY(720deg);
  }
}
@keyframes sceneRotate {
  from {
    transform: rotateX(0deg) rotateY(0deg);
  }
  to {
    transform: rotateX(360deg) rotateY(720deg);
  }
}

.ring {
  position: absolute;
  transform: rotateZ(var(--ring-angle)) translateX(240px);
  transform-style: preserve-3d;
}
.ring:nth-child(1) {
  --ring-angle: 0deg;
}
.ring:nth-child(2) {
  --ring-angle: 36deg;
}
.ring:nth-child(3) {
  --ring-angle: 72deg;
}
.ring:nth-child(4) {
  --ring-angle: 108deg;
}
.ring:nth-child(5) {
  --ring-angle: 144deg;
}
.ring:nth-child(6) {
  --ring-angle: 180deg;
}
.ring:nth-child(7) {
  --ring-angle: 216deg;
}
.ring:nth-child(8) {
  --ring-angle: 252deg;
}
.ring:nth-child(9) {
  --ring-angle: 288deg;
}
.ring:nth-child(10) {
  --ring-angle: 324deg;
}

.layer {
  position: absolute;
  top: -60px;
  left: -60px;
  width: 120px;
  height: 120px;
  border: 10px solid hsl(var(--hue), 100%, 50%);
  border-radius: 50%;
  transform: translateZ(var(--tz));
}
.layer:nth-child(1) {
  --tz: -5px;
  --hue: 120;
}
.layer:nth-child(2) {
  --tz: -4px;
  --hue: 126;
}
.layer:nth-child(3) {
  --tz: -3px;
  --hue: 132;
}
.layer:nth-child(4) {
  --tz: -2px;
  --hue: 138;
}
.layer:nth-child(5) {
  --tz: -1px;
  --hue: 144;
}
.layer:nth-child(6) {
  --tz: 0px;
  --hue: 150;
}
.layer:nth-child(7) {
  --tz: 1px;
  --hue: 156;
}
.layer:nth-child(8) {
  --tz: 2px;
  --hue: 162;
}
.layer:nth-child(9) {
  --tz: 3px;
  --hue: 168;
}
.layer:nth-child(10) {
  --tz: 4px;
  --hue: 174;
}
.layer:nth-child(11) {
  --tz: 5px;
  --hue: 180;
}

.panel {
  position: absolute;
  width: 36.5px;
  height: 10px;
  background-color: #f007;
  background-image: linear-gradient(lime, aqua);
  transform: translate(-50%, -50%) rotateZ(var(--panel-angle)) rotateX(90deg) translateZ(56px);
}
.panel:nth-child(12) {
  --panel-angle: 0deg;
}
.panel:nth-child(13) {
  --panel-angle: 36deg;
}
.panel:nth-child(14) {
  --panel-angle: 72deg;
}
.panel:.........完整代码请登录后点击上方下载按钮下载查看

网友评论0