我想无限地旋转图形元素,但一步一步有一定的时间间隔。
例如,旋转 90 度(平滑动画),然后 5 秒后再旋转 90 度,并无限重复相同的操作。
仅使用CSS 可以完成此操作吗?
这是我的JS BIN
很简单。以下代码将转换限制为关键帧40%-60%
(整个持续时间的五分之一)。所以,如果我们给6 seconds
到整个动画,1.2s
将用于移动和4.8s
将用于延迟。您可以使用它来获得更准确的数字。
@-webkit-keyframes rotation {
0%, 40% {-webkit-transform: rotate(0deg);}
60%, 100% {-webkit-transform: rotate(90deg);}
}
@keyframes rotation {
0%, 40% { transform: rotate(0deg); }
60%, 100% { transform: rotate(90deg); }
}
.wrapper a:last-child div {
-webkit-animation: rotation 6s infinite linear;
animation: rotation 6s infinite linear;
}
Snippet
@-webkit-keyframes rotation {
0%, 40% {-webkit-transform: rotate(0deg);}
60%, 100% {-webkit-transform: rotate(90deg);}
}
@keyframes rotation {
0%, 40% { transform: rotate(0deg); }
60%, 100% { transform: rotate(90deg); }
}
.wrapper {
position: relative;
}
.wrapper a:first-child div{
position: absolute;
width:25px;
height:25px;
top: 13px;
left: 13px;
background: red;
z-index: 100;
}
.wrapper a:last-child div {
width:50px;
height:50px;
position: relative;
background: orange;
-webkit-animation: rotation 6s infinite linear;
animation: rotation 6s infinite linear;
}
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>JS Bin</title>
</head>
<body>
<div class="wrapper">
<a href="#"><div></div></a>
<a href="#"><div></div></a>
</div>
</body>
</html>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)