利用Css3伪类加Animation绑定动画实现旋转的太极

Css-伪类_太极

原理:利用css的before和after这2个属性值来实现画出太极,然后定义动画,最后用animation绑定动画,实现效果。

Demo:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>Css-伪类_太极</title>
		<style type="text/css">
@keyframes xuanzhuan{
	0%{

		transform: rotate(0deg);

	}
	100%{

		transform: rotate(360deg);

	}
}

@-webkit-keyframes xuanzhuan{
	0%{

		transform: rotate(0deg);

	}
	100%{

		transform: rotate(360deg);

	}
}			
#yin-yang {
	width: 96px;
	height: 48px;
	background: #fff;
	border-color: black;
	border-style: solid;
	border-width: 2px 2px 50px 2px;
	border-radius: 100%;
	position: relative;
	transform: rotate(-90deg);
	animation: xuanzhuan 3s linear 0s infinite;
	-webkit-animation: xuanzhuan 3s linear 0s infinite;
}

#yin-yang:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	background: #eee;
	border: 18px solid black;
	border-radius: 100%;
	width: 12px;
	height: 12px;
}

#yin-yang:after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	background: black;
	border: 18px solid #fff;
	border-radius:100%;
	width: 12px;
	height: 12px;

}


@keyframes boxxz{
	0%{
		transform: rotate(0deg);
	}
	100%{
		transform: rotate(360deg);
	}
}

.box{width: 200px;height: 200px;border-radius: 100px;border: 3px solid slateblue;border-top:0;border-left: 0;border-bottom:0;animation: boxxz 2s linear 0s infinite;}
.box:after{content:"";width: 180px;height: 180px;background: seashell;}

		</style>
	</head>
	<body>
		<div class="containar" id="yin-yang">
			
		</div>
		
		<div class="box"></div>
	</body>
</html>

效果图:

猜你喜欢

转载自www.cnblogs.com/abc-x/p/9363607.html