淘先锋技术网

首页 1 2 3 4 5 6 7

CSS 可以轻易地实现图片的旋转,而其中一种比较炫酷的效果是让图片以圆心旋转。下面就让我们来看一下具体怎么做吧。

.rotate {
width: 200px;
height: 200px;
position: relative;
}
.rotate img {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
border-radius: 50%;
animation: spin 5s linear infinite;
transform-origin: 50% 50%;
}
@keyframes spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}

这里我们创建了一个 .rotate 的容器,使用相对定位(position: relative;)使内部的 img 使用绝对定位(position: absolute;)。我们给 img 设置了宽度和高度都为 100%,并设置了 50% 的圆角,即将图片变成圆形。

接着,我们定义了一个名为 spin 的旋转动画,持续时间为 5 秒,采用线性动画,无限循环,作用于 img 标签。transform-origin 属性用来设置旋转的中心点,这里我们设置为图片的正中心(50% 50%)。

最后,我们在 HTML 中使用这个样式类,将需要旋转的图像放在 .rotate 容器中即可。

<div class="rotate">
<img src="rotate-image.png" alt="Rotate Image">
</div>

这样做就可以实现一个带有圆心旋转效果的图片了。需要注意的是,这种效果对性能消耗比较大,如果需要一次旋转多个图片,需要考虑一些优化手段来减少性能的消耗。