旋转木马–利用html5和css3制作好看的图片3D旋转效果
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
body{
perspective: 1000px;//在父级元素上施加透视效果,更具有3D效果
}
section{
width: 300px;
height: 200px;
margin: 150px auto;//把图片移动到页面中间位置
position: relative;
transform-style: preserve-3d;//让子元素保持3D效果
animation: rotate 10s linear infinite;//动画 使图片旋转起来
background: url(02.jpg) no-repeat top center;//引入位于同一路径下的图片
background-size: 300px 170px;//修改图片大小
}
section:hover{
animation-play-state: paused;//当鼠标移到图片上使,停止动画转动
}
@keyframes rotate{//设置动画初末位置
0%{
transform: rotateY(0);
}
100%{
transform: rotateY(360deg);
}
}
section div{ //引入位于中间的图片
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
background: url(01.jpg) no-repeat;
background-size: 240px;
}
//通过Html新增伪类选择器,选择各图片并进行位置修改
section div:nth-child(1){
transform: translateZ(300px);
}
section div:nth-child(2){
transform:rotateY(60deg) translateZ(300px);
}
section div:nth-child(3){
transform:rotateY(120deg) translateZ(300px);
}
section div:nth-child(4){
transform:rotateY(180deg) translateZ(300px);
}
section div:nth-child(5){
transform:rotateY(240deg) translateZ(300px);
}
section div:nth-child(6){
transform:rotateY(300deg) translateZ(300px);
}
</style>
</head>
<body>
<section>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</section>
</body>
</html>
关于图片位置的判断,只要记住translate关于x,y,z轴怎样旋转,就可以通过角度设计出来