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) {.........完整代码请登录后点击上方下载按钮下载查看

网友评论0