纯css实现希尔宾斯基方块旋转效果

代码语言:html

所属分类:三维

代码描述:纯css实现希尔宾斯基方块旋转效果,采用css的变量形式

代码标签: 希尔 宾斯 方块 旋转 效果

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


<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">

<style>
cube {
  --s: 243px;
  --hs: calc(var(--s) / 2);
  display: block;
  width: var(--s); height: var(--s);
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  will-change: transform;
  -webkit-animation: r 15s linear infinite;
          animation: r 15s linear infinite;
}

side {
  position: absolute;
  width: 100%; height: 100%;
  
  --sq: conic-gradient(
    from 270deg at calc(100% / 3) calc(100% / 3),
    #fff 90deg, transparent 0
  );

  background:
    var(--sq)
      calc(var(--s) / 3) calc(var(--s) / 3) /
      100% 100%,
    var(--sq)
      calc(100% / 6) calc(100% / 6) /
      calc(100% / 3) calc(100% / 3),
    var(--sq)
      calc(100% / 6) calc(100% / 6) /
      calc(100% / 9) calc(100% / 9),
    var(--sq)
      calc(100% / 6) calc(100% / 6) /
      calc(100% / 27) calc(100% / 27),
    var(--sq)
      calc(100% / 6) calc(100% / 6) /
      calc(100% / 81) calc(100% / 81);

  background-color: #000;
  background-blend-mode: difference;
}

side:nth-child(1) { -webkit-transform: translateZ(var(--hs)); transform: translateZ(var(--hs)) }
side:nth-child(2) { -webkit-transform: translateZ(calc(-1 * var(--hs))); transform: translateZ(calc(-1 * var(--hs))); }
side:nth-child(3) { -webkit-transform: rotateY(90deg) translateZ(var(--hs)).........完整代码请登录后点击上方下载按钮下载查看

网友评论0