做一个小鸟周围围绕着三个圈的html效果,周围三个圈分别在x,y,z轴旋转的效果
时间: 2024-03-05 08:53:16 浏览: 118
可以使用CSS3的动画和transform属性来实现这个效果。下面是一个示例代码:
```html
<!DOCTYPE html>
<html>
<head>
<style>
/* 定义小鸟的样式 */
.bird {
position: relative;
width: 50px;
height: 50px;
background-color: #ffcc66;
border-radius: 50%;
animation: bird-fly 2s ease-in-out infinite alternate;
}
/* 定义三个圆圈的样式 */
.circle {
position: absolute;
top: calc(50% - 20px);
left: calc(50% - 20px);
width: 40px;
height: 40px;
border: 2px solid #ccc;
border-radius: 50%;
animation: circle-rotate 4s linear infinite;
}
/* 定义三个圆圈在不同轴上的旋转效果 */
@keyframes circle-rotate {
from {
transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg);
}
to {
transform: rotateX(360deg) rotateY(360deg) rotateZ(360deg);
}
}
/* 定义小鸟飞行的动画效果 */
@keyframes bird-fly {
from {
transform: translateY(0) rotateZ(0deg);
}
to {
transform: translateY(-100px) rotateZ(360deg);
}
}
</style>
</head>
<body>
<div class="bird"></div>
<div class="circle" style="transform: translateX(150px);"></div>
<div class="circle" style="transform: translateX(-120px) translateY(-120px);"></div>
<div class="circle" style="transform: translateY(140px);"></div>
</body>
</html>
```
在上面的代码中,我们首先定义了一个class为"bird"的div元素,表示小鸟的样式和动画效果。然后定义了一个class为"circle"的div元素,表示三个圆圈的样式和动画效果,通过transform属性来控制它们在不同轴上的旋转效果。最后在HTML中使用这些元素来实现整个效果。
注意:在这个效果中,我们使用了calc()函数来计算元素的位置,需要确保浏览器支持这个函数,否则可能会出现布局问题。
阅读全文