css实现多边形折纸动画效果代码

代码语言:html

所属分类:动画

代码描述:css实现多边形折纸动画效果代码

代码标签: css 多边形 折纸 动画

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

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

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

  
<style>
.shape {
  aspect-ratio: 1;
  background: #ffe681;
  place-self: center;
}

body {
  min-height: 100vh;
  margin: 0;
  display: grid;
  background: #1f2020;
  font-family: system-ui, sans-serif;
}

:root {
  --r: 25;
  --u: 1vmin;
}

.shape {
  width: calc(var(--r) * 2 * var(--u));
  clip-path: shape(from       calc( var(--u) * (var(--r) + var(--r) * cos(0)))       calc(var(--u) * (var(--r) + var(--r) * sin(0))),line to           calc( var(--u) * (var(--r) + var(--r) * cos(2 * pi * 1 / 3)))         calc(var(--u) * (var(--r) + var(--r) * sin(2 * pi * 1 / 3))),line to           calc( var(--u) * (var(--r) + var(--r) * cos(2 * pi * 2 / 3)))         calc(var(--u) * (var(--r) + var(--r) * sin(2 * pi * 2 / 3))),line to             calc( var(--u) * (var(--r) + var(--r) * cos(2 * pi * 2 / 3)))           calc(var(--u) * (var(--r) + var(--r) * sin(2 * pi * 2 / 3))),line to             calc( var(--u) * (var(--r) + var(--r) * cos(2 * pi * 2 / 3)))           calc(var(--u) * (var(--r) + var(--r) * sin(2 * pi * 2 / 3))),line to             calc( var(--u) * (var(--r) + var(--r) * cos(2 * pi * 2 / 3)))           calc(var(--u) * (var(--r) + var(--r) * sin(2 * pi * 2 / 3))),line to             calc( var(--u) * (var(--r) + var(--r) * cos(2 * pi * 2 / 3)))           calc(var(--u) * (var(--r) + var(--r) * sin(2 * pi * 2 / 3))),line to             calc( var(--u) * (var(--r) + var(--r) * cos(2 * pi * 2 / 3)))           calc(var(--u) * (var(--r) + var(--r) * sin(2 * pi * 2 / 3))),line to             calc( var(--u) * (var(--r) + var(--r) * cos(2 * pi * 2 / 3)))           calc(var(--u) * (var(--r) + var(--r) * sin(2 * pi * 2 / 3))),line to             calc( var(--u) * (var(--r) + var(--r) * cos(2 * pi * 2 / 3)))           calc(var(--u) * (var(--r) + var(--r) * sin(2 * pi * 2 / 3))),line to             calc( var(--u) * (var(--r) + var(--r) * cos(0)))           calc(var(--u) * (var(--r) + var(--r) * sin(0))), close);
  animation: change-me cubic-bezier(1, 0, 0, 1) 10s infinite alternate 0.2s;
  --s2: calc(2deg * ((3 - 2) 180 / 3));
  --s1: calc(1deg * ((3 - 2) 180 / 3));
  background: repeating-conic-gradient(from 90deg, #f3d060, #ffe681 calc(1deg * (180 - ((var(--i) - 2)*180 / var(--i)))));
}

@keyframes change-me {
  0% {
    --i: 3;
    clip-path: shape(from       calc( var(--u) * (var(--r) + var(--r) * cos(0)))       calc(var(--u) * (var(--r) + var(--r) * sin(0))),line to           calc( var(--u) * (var(--r) + var(--r) * cos(2 * pi * 1 / 3)))         calc(var(--u) * (var(--r) + var(--r) * sin(2 * pi .........完整代码请登录后点击上方下载按钮下载查看

网友评论0