div+css绘制走出黑暗对数螺旋线旋转动画效果代码

代码语言:html

所属分类:动画

代码描述:div+css绘制走出黑暗对数螺旋线旋转动画效果代码

代码标签: 黑暗 对数 螺旋线 旋转 动画 效果

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


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

<head>

  <meta charset="UTF-8">
  

  
<style>
#btn--yp {
  box-sizing: content-box;
  position: fixed;
  z-index: 9;
  bottom: 1em;
  right: 1em;
  border: solid 1em transparent;
  width: 4.625em;
  height: 3.25em;
  
  font: 16px/1.25 trebuchet ms, sans-serif;
  text-indent: 200vw;
  text-shadow: none;
  filter: grayscale(1) drop-shadow(0 0 1px #e8e0e0);
  transition: 0.5s;
  white-space: nowrap;
}
#btn--yp:before {
  box-sizing: inherit;
  position: absolute;
  left: 0;
  bottom: 100%;
  margin: 1em -0.5em;
  padding: 0.5em;
  width: 100%;
  border-radius: 5px;
  background: #e8e0e0;
  color: #000;
  text-align: center;
  text-decoration: none;
  text-indent: 0vw;
  white-space: normal;
  animation: float 1s ease-in-out infinite alternate;
  content: attr(data-txt);
}
#btn--yp:hover, #btn--yp:focus {
  outline: none;
  filter: grayscale(0) drop-shadow(0 0 1px crimson);
}

@keyframes float {
  to {
    transform: translateY(0.75em);
  }
}
body {
  display: grid;
  place-content: center;
  overflow: hidden;
  margin: 0;
  height: 100vh;
  background: radial-gradient(circle closest-side, #000, #fff);
}

.dot {
  --k: calc(var(--i)/var(--n-arms));
  grid-area: 1/1;
  place-self: center;
  padding: var(--c);
  border-radius: 50%;
  transform: rotate(calc(var(--k)*1turn + var(--j)*var(--u))) translate(var(--r0)) scale(calc(min(1, var(--j))*var(--f0)));
  opacity: calc(1 - var(--j)/var(--n-dots));
  background: hsl(calc(var(--k)*360), 97%, 63%);
  animation: a 1s linear infinite;
}

@keyframes a {
  to {
    transform: rotate(calc(var(--k)*1turn + (var(--j) + 1)*var(--u))) translate(var(--r1)) scale(var(--f1));
    opacity: calc(1 - (var(--j) + 1)/var(--n-dots));
  }
}
</style>



</head>

  <body style="--n-dots: 50; --n-arms: 7;
						--u: 15deg; --c: 3px">
  <style>.dot:nth-of-type(n + 1) { --i: 0 }.dot:nth-of-type(n + 51) { --i: 1 }.dot:nth-of-type(n + 101) { --i: 2 }.dot:nth-of-type(n + 151) { --i: 3 }.dot:nth-of-type(n + 201) { --i: 4 }.dot:nth-of-type(n + 251) { --i: 5 }.dot:nth-of-type(n + 301) { --i: 6 }.dot:nth-of-type(50n + 1) {
    	--j: 0;
    	--r0: 24px;
    	--f0: 1.07;
    	--r1: 26px;
    	--f1: 1.14
    }.dot:nth-of-type(50n + 2) {
    	--j: 1;
    	--r0: 26px;
    	--f0: 1.14;
    	--r1: 28px;
    	--f1: 1.22
    }.dot:nth-of-type(50n + 3) {
    	--j: 2;
    	--r0: 28px;
    	--f0: 1.22;
    	--r1: 30px;
    	--f1: 1.3
    }.dot:nth-of-type(50n + 4) {
    	--j: 3;
    	--r0: 30px;
    	--f0: 1.3;
    	--r1: 33px;
    	--f1: 1.39
    }.dot:nth-of-type(50n + 5) {
    	--j: 4;
    	--r0: 33px;
    	--f0: 1.39;
    	--r1: 36px;
    	--f1: 1.48
    }.dot:nth-of-type(50n + 6) {
    	--j: 5;
    	--r0: 36px;
    	--f0: 1.48;
    	--r1: 39px;
    	--f1: 1.58
    }.dot:nth-of-type(50n + 7) {
    	--j: 6;
    	--r0: 39px;
    	--f0: 1.58;
    	--r1: 42px;
    	--f1: 1.69
    }.dot:nth-of-type(50n + 8) {
    	--j: 7;
    	--r0: 42px;
    	--f0: 1.69;
    	--r1: 45px;
    	--f1: 1.8
    }.dot:nth-of-type(50n + 9) {
    	--j: 8;
    	--r0: 45px;
    	--f0: 1.8;
    	--r1: 49px;
    	--f1: 1.92
    }.dot:nth-of-type(50n + 10) {
    	--j: 9;
    	--r0: 49px;
    	--f0: 1.92;
    	--r1: 53px;
    	--f1: 2.05
    }.dot:nth-of-type(50n + 11) {
    	--j: 10;
    	--r0: 53px;
    	--f0: 2.05;
    	--r1: 57px;
    	--f1: 2.19
    }.dot:nth-of-type(50n + 12) {
    	--j: 11;
    	--r0: 57px;
    	--f0: 2.19;
    	--r1: 61px;
    	--f1: 2.34
    }.dot:nth-of-type(50n + 13) {
    	--j: 12;
    	--r0: 61px;
    	--f0: 2.34;
    	--r1: 66px;
    	--f1: 2.5
    }.dot:nth-of-type(50n + 14) {
    	--j: 13;
    	--r0: 66px;
    	--f0: 2.5;
    	--r1: 71px;
    	--f1: 2.67
    }.dot:nth-of-type(50n + 15) {
    	--j: 14;
    	--r0: 71px;
    	--f0: 2.67;
    	--r1: 76px;
    	--f1: 2.85
    }.dot:nth-of-type(50n + 16) {
    	--j: 15;
    	--r0: 76px;
    	--f0: 2.85;
    	--r1: 82px;
    	--f1: 3.04
    }.dot:nth-of-type(50n + 17) {
    	--j: 16;
    	--r0: 82px;
    	--f0: 3.04;
    	--r1: 88.........完整代码请登录后点击上方下载按钮下载查看

网友评论0