html实现宝石旋转动画
时间: 2023-12-23 10:26:53 浏览: 130
以下是一个基于HTML和CSS实现宝石旋转动画的例子:
```html
<!DOCTYPE html>
<html>
<head>
<title>宝石旋转动画</title>
<style>
.container {
width: 400px;
height: 400px;
perspective: 1000px;
margin: 0 auto;
}
.diamond {
width: 200px;
height: 200px;
position: relative;
transform-style: preserve-3d;
animation: rotate 10s linear infinite;
}
.diamond .face {
position: absolute;
width: 200px;
height: 200px;
background: url('diamond.png') no-repeat center center;
background-size: cover;
opacity: 0.8;
box-shadow: 0 0 20px #fff;
border-radius: 50%;
transform-style: preserve-3d;
}
.diamond .face:nth-child(1) {
transform: rotateY(0deg) translateZ(100px);
}
.diamond .face:nth-child(2) {
transform: rotateY(90deg) translateZ(100px);
}
.diamond .face:nth-child(3) {
transform: rotateY(180deg) translateZ(100px);
}
.diamond .face:nth-child(4) {
transform: rotateY(270deg) translateZ(100px); }
.diamond .face:nth-child(5) {
transform: rotateX(90deg) translateZ(100px);
}
.diamond .face:nth-child(6) {
transform: rotateX(-90deg) translateZ(100px);
}
@keyframes rotate {
from {
transform: rotateY(0deg);
}
to {
transform: rotateY(360deg);
}
}
</style>
</head>
<body>
<div class="container">
<div class="diamond">
<div class="face"></div>
<div class="face"></div>
<div class="face"></div>
<div class="face"></div>
<div class="face"></div>
<div class="face"></div>
</div>
</div>
</body>
</html>
```
这个例子中,我们使用了CSS3的3D变换和动画特效来实现宝石的旋转动画。我们首先定义了一个容器,然后在容器中创建一个宝石元素,宝石元素中包含了6个面,每个面都是一个正方形,通过不同的3D变换来实现宝石的立体效果。最后,我们使用CSS3的动画特效来让宝石不断旋转。