div+css实现吐子弹发射小球三维动画效果代码

代码语言:html

所属分类:三维

代码描述:div+css实现吐子弹发射小球三维动画效果代码

代码标签: div 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: #000;
  color: #fff;
  min-height: 100vh;
  display: grid;
  place-items: center;
  perspective: 800px;
  overflow: clip;
  
  * {
    transform-style: preserve-3d;
  }
}

.scene {
  --duration: 60s;
  --duration-r: 180s;
  
  position: relative;
  -webkit-animation: scene var(--duration-r) linear infinite;
          animation: scene var(--duration-r) linear infinite;

  * { position: absolute; }
}

@-webkit-keyframes scene {
  from { transform: rotateX(60deg) rotateZ(0deg); }
  to { transform: rotateX(60deg) rotateZ(-360deg); }
}

@keyframes scene {
  from { transform: rotateX(60deg) rotateZ(0deg); }
  to { transform: rotateX(60deg) rotateZ(-360deg); }
}

.floor {
  inset: -40em;
  background-color: #fff2;
  background:
    radial-gradient(closest-side, transparent, black),
    repeating-conic-gradient(from 30deg, #aaf8 0 30deg, #aaf7 0 90deg) 0 0 / 2em 2em;
}

.canon {
  inset: -2em;
  border-radius: 50%;
  background-image: radial-gradient(closest-side, #000 0.5em, transparent);
  
  i {
    --n: calc(sibling-index() / sibling-count());
    
    inset: 1.5em;
    border-radius: 50%;
    border: 0.25em solid hsl(0 0% calc(var(--n) * 100%));
    transform: translateZ(calc(var(--n) * 3em));
    -webkit-animation: canon calc(var(--duration) / 64) calc(var(--n) * var(--duration) / 64) ease-in-out infinite;
            anim.........完整代码请登录后点击上方下载按钮下载查看

网友评论0