Transition.gif
代碼很簡單,大概 思路:
1, 添加圖片, 設置position, 圖片疊加, 共用一個中心點;
2, 圖片設置y軸旋轉, 共9張, 一圈360°, 每張依次旋轉+=40°, 第一張旋轉0°;
3, 將圖片拉開排布, 設置translateZ( );
4, 添加點擊事件, 讓圖片動起來.
話不多說,看代碼吧
1, 結構
<body>
<div class="wrap">
<div id="content">
<img src="image/1.jpg" alt="" />
<img src="image/2.jpeg" alt="" />
<img src="image/3.jpeg" alt="" />
<img src="image/4.jpeg" alt="" />
<img src="image/5.jpg" alt="" />
<img src="image/6.jpg" alt="" />
<img src="image/7.jpg" alt="" />
<img src="image/8.jpg" alt="" />
<img src="image/9.jpg" alt="" />
</div>
</div>
</body>
2, 樣式
<style media="screen">
/*圖片大小*/
img {
width: 140px;
height: 110px;
position: absolute;
}
.wrap {
width: 100px;
margin: 0 auto;
margin-top: 100px;
-webkit-perspective: 800px;
}
#content {
-webkit-transform-style:preserve-3d;
transition: 2s;
}
/*圖片旋轉*/
img:nth-child(1) {
transform: rotateY(0deg) translateZ(220px);
}
img:nth-child(2) {
transform: rotateY(40deg) translateZ(220px);
}
img:nth-child(3) {
transform: rotateY(80deg) translateZ(220px);
}
img:nth-child(4) {
transform: rotateY(120deg) translateZ(220px);
}
img:nth-child(5) {
transform: rotateY(160deg) translateZ(220px);
}
img:nth-child(6) {
transform: rotateY(200deg) translateZ(220px);
}
img:nth-child(7) {
transform: rotateY(240deg) translateZ(220px);
}
img:nth-child(8) {
transform: rotateY(280deg) translateZ(220px);
}
img:nth-child(9) {
transform: rotateY(320deg) translateZ(220px);
}
</style>
3, javaScript
<script type="text/javascript">
var content = document.getElementById('content');
var angel = 40;
//添加點擊事件讓圖片旋轉
content.onclick = function () {
content.style.transform = 'rotateY('+angel+'deg)';
angel += 40;
}
</script>