div+css实现圆形线圈转动动画效果代码

代码语言:html

所属分类:动画

代码描述:div+css实现圆形线圈转动动画效果代码

代码标签: div css 圆形 线圈 转动 动画

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


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

<head>

  <meta charset="UTF-8">

  
  
  
<style>
:root {
	--s: 1s;    /*speed*/
	--d: 10;      /*delay*/
	--c: #ff2525; /*color*/
}

* {
	transform-style: preserve-3d;
	box-sizing: border-box;
}

body {
	margin: 0;
	padding: 0;
	width: 100vw;
	height: 100vh;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	perspective: 1000vmin;
	background: radial-gradient(circle at 50% 100%, #101010, #000);
}

.sphere {
	width: 50vmin;
	height: 50vmin;
	background: #ffF0;
	position: relative;
	animation: spin 5s linear 0s infinite;
	animation-play-state: running;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: none;
	position: absolute;
	z-index: 2;
}

.sphere:hover {
	animation-play-state: paused;
}

@keyframes spin {
	0% { transform: rotateX(-210deg) rotateY(0deg) rotatez(185deg); }
	100% { transform: rotateX(-210deg) rotateY(360deg) rotatez(185deg); }
}

.sphere div {
	--sz: 23%;
	--dv: calc(var(--s) / var(--d));
	--dl: calc(var(--dv) * -1);
	width: var(--sz);
	height: var(--sz);
	position: absolute;
	border: 0.25vmin solid var(--c);
	border-radius: 100%;
	transform: rotateX(90deg) translateZ(23.75vmin);
	box-shadow: 
		0 0 0.125vmin 0.125vmin var(--c), 
		0 0 0.125vmin 0.125vmin var(--c) inset;
	animation: shine var(--s) linear var(--dl) infinite alternate;
	background: #fff0;
}

@keyframes shine {
	0%, 50%, 100% {
		border-color: var(--c);
		box-shadow: 0 0 0.125vmin 0.125vmin var(--c), 0 0 0.125vmin 0.125vmin var(--c) inset;
	}
	25%, 75% {
		border-color: #fff0;
		box-shadow: 0 0 0.125vmin 0.125vmin #fff0, 0 0 0.125vmin 0.125vmin #fff0 inset;
	}
}

.sphere div:nth-child(2) {
	transform: rotateX(90deg) translateZ(22.5vmin);
	--sz: 43%;
	--dl: calc(var(--dv) * -2);
}

.sphere div:nth-child(3) {
	transform: rotateX(90deg) translateZ(20vmin);
	--sz: 60%;
	--dl: calc(var(--dv) * -3);
}

.sphere div:nth-child(4) {
	transform: rotateX(90deg) translateZ(17.5vmin);
	--sz: 71%;
	--dl: calc(var(--dv) * -4);
}

.sphere div:nth-child(5) {
	transform: rotateX(90deg) translateZ(15vmin);
	--sz: 80%;
	--dl: calc(var(--dv) * -5);
}

.sphere div:nth-child(6) {
	transform: rotateX(90deg) translateZ(12.5vmin);
	--sz: 86%;
	--dl: calc(var(--dv) * -6);
}
.sphere div:nth-child(7) {
	transform: rotateX(90deg) translateZ(10vmin);
	-.........完整代码请登录后点击上方下载按钮下载查看

网友评论0