div+css实现三维波浪面上下起伏动画效果代码

代码语言:html

所属分类:动画

代码描述:div+css实现三维波浪面上下起伏动画效果代码

代码标签: div css 三维 波浪面 上下 起伏 动画

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

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

<head>
  <meta charset="UTF-8">
  
  
<style>
@charset "UTF-8";
@property --a {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}
html, body, div {
  display: grid;
}

html {
  height: 100%;
}

body {
  overflow: hidden;
  perspective: 35em;
  background: #000;
}

div {
  transform-style: preserve-3d;
}

.a3d {
  grid-template: repeat(var(--n), 1.5em)/repeat(var(--n), 1.5em);
  place-self: center;
  transform: rotatex(75deg) rotate(1turn);
  animation: r 16s linear infinite;
}

@keyframes r {
  to {
    transform: rotatex(75deg);
  }
}
.📐 {
  --k: calc(1.5*sin(var(--i)/var(--n)*1.5turn + var(--a)) +
  			 2.5*cos(var(--j)/var(--n)*1turn + var(--a)));
  --tan-i: calc(calc(1.5*sin(calc(var(--i) + 1)/var(--n)*1.5turn + var(--a)) +
  			 2.5*cos(var(--j)/var(--n)*1turn + var(--a))) + -1*var(--k));
  --tan-j: calc(calc(1.5*sin(var(--i)/var(--n)*1.5turn + var(--a)) +
  			 2.5*cos(calc(var(--j) + 1)/var(--n)*1turn + var(--a))) + -1*var(--k));
  transform-origin: 0 0;
  transform: translatez(calc(var(--k)*1.5em)) matrix3d(1, 0, var(--tan-i), 0, 0, 1, var(--tan-j), 0, 0, 0, 1, 0, 0, 0, 0, 1);
  background: linear-gradient(135deg, currentcolor 50%, transparent 0);
  color: hsl(calc((var(--i) + var(--j))/var(--n)*180), 100%, 65%);
  animation: a 4s linear infinite;
}

@keyframes a {
  to {
    --a: 1turn ;
  }
}
</style>

</head>

<body translate="no">
  <style>.📐:nth-child(18n + 1) { --i: 0 }
  .📐:nth-child(n + 1) { --j: 0 }.📐:nth-child(18n + 2) { --i: 1 }
  .📐:nth-child(n + 19) { --j: 1 }.📐:nth-child(18n + 3) { --i: 2 }
  .📐:nth-child(n + 37) { --j: 2 }.📐:nth-child(18n + 4) { --i: 3 }
  .📐:nth-child(n + 55) { --j: 3 }.📐:nth-child(18n + 5) { --i: 4 }
  .📐:nth-child(n + 73) { --j: 4 }.📐:nth-child(18n + 6) { --i: 5 }
  .📐:nth-child(n + 91) { --j: 5 }.📐:nth-child(18n + 7) { --i: 6 }
  .📐:nth-child(n + 109) { --j: 6 }.📐:nth-child(18n + 8) { --i: 7 }
  .📐:nth-child(n + 127) { --j: 7 }.📐:nth-child(18n + 9) { --i: 8 }
  .📐:nth-child(n + 145) { --j: 8 }.📐:nth-child(18n + 10) { --i: 9 }
  .📐:nth-child(n + 163) { --j: 9 }.📐:nth-child(18n + 11) { --i: 10 }
  .📐:nth-child(n + 181) { --j: 10 }.📐:nth-child(18n + 12) { --i: 11 }
  .📐:nth-child(n + 199) { --j: 11 }.📐:nth-child(18n + 13) { --i: 12 }
  .📐:nth-child(n + 217) { --j: 12 }.📐:nth-child(18n + 14) { --i: 13 }
  .📐:nth-child(n + 235) { --j: 13 }.📐:nth-child(18n + 15) { --i: 14 }
  .📐:nth-child(n + 253) { --j: 14 }.📐:nth-child(18n + 16) { --i: 15 }
  .📐:nth-child(n + 271) { --j: 15 }.📐:nth-child(18n + 17) { --i: 16 }
  .📐:nth-child(n + 289) { --j: 16 }.📐:nth-child(18n + 18) { --i: 17 }
  .📐:nth-child(n + 307) { --j: 17 }
</style>
<div class="a3d" style="--n: 18">
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
  <div class="📐"></div>
 .........完整代码请登录后点击上方下载按钮下载查看

网友评论0