css球形立体圈旋转效果
代码语言:html
所属分类:动画
代码描述:css球形立体圈旋转效果
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
body {
overflow: hidden;
background: #5c5757;
}
div {
position: absolute;
}
.a3d {
--ay: 0deg;
--az: 0deg;
--lim: calc(.5*(var(--p) - 1));
top: 50%;
left: 50%;
transform-style: preserve-3d;
transform: rotatey(var(--ay)) rotate(var(--az));
animation: az 9s linear infinite, ay 9s cubic-bezier(0.68, -0.6, 0.32, 1.6) infinite;
}
.dot {
--abs-idx: max(calc(var(--lim) - var(--idx)), calc(var(--idx) - var(--lim)));
--sgn-idx: calc(var(--abs-idx)/(var(--idx) - var(--lim)));
--d: calc(3px + var(--abs-idx)/var(--p)*2em);
--a: calc(var(--k)*1turn/var(--m));
--x: calc(var(--abs-idx)*2*2em/var(--m));
--z: calc((var(--idx) - var(--lim))*2*2em/var(--m));
margin: calc(-.5*var(--d));
width: var(--d);
height: var(--d);
border-radius: 50%;
transform: scalex(var(--sgn-idx)) rotate(var(--a)) translate3d(var(--x), 0, var(--z)) rotate(calc(-1*var(--a))) scalex(var(--sgn-idx)) rotate(calc(-1*var(--az))) rotatey(calc(-1*var(--ay)));
background: radial-gradient(circle at 35% 35%, #fff, hsl(calc((1 - calc(var(--idx)/var(--p)))*37 + calc(var(--idx)/var(--p))*221), calc((1 - calc(var(--idx)/var(--p)))*100% + calc(var(--idx)/var(--p))*79%), calc((1 - calc(var(--idx)/var(--p)))*42% + calc(var(--idx)/var(--p))*63%)) 65%);
}
@keyframes ay {
0%, 15% {
--ay: 1turn ;
}
50%, 65% {
--ay: .5turn ;
}
}
@keyframes az {
to {
--az: 1turn ;
}
}
</style>
</head>
<body translate="no">
<style>.a3d { --m: 24; --p: 241 }.dot:nth-child(24n + 1) { --k: 0 }.dot:nth-child(24n + 2) { --k: 1 }.dot:nth-child(24n + 3) { --k: 2 }.dot:nth-child(24n + 4) { --k: 3 }.dot:nth-child(24n + 5) { --k: 4 }.dot:nth-child(24n + 6) { --k: 5 }.dot:nth-child(24n + 7) { --k: 6 }.dot:nth-child(24n + 8) { --k: 7 }.dot:nth-child(24n + 9) { --k: 8 }.dot:nth-child(24n + 10) { --k: 9 }.dot:nth-child(24n + 11) { --k: 10 }.dot:nth-child(24n + 12) { --k: 11 }.dot:nth-child(24n.........完整代码请登录后点击上方下载按钮下载查看
















网友评论0