html翻轉效果的實作方法:先將兩個要展示的圖片利用定位重疊在一起;然後利用CSS3的perspective結合「transform:ratateY()」屬性實現翻轉效果即可。
本文操作環境:windows7系統、HTML5&&CSS3版、Dell G3電腦。
CSS3實作漂亮的卡片翻轉效果
#先貼效果圖(實際效果比gif圖流暢1000倍,放心使用):
主要利用的CSS3的perspective
結合transform:ratateY()
屬性完成。當為元素定義 perspective 屬性時,其子元素會獲得透視效果,而不是元素本身。 要注意的是:perspective 屬性只影響 3D 轉換元素。
這個屬性現在在火狐谷歌safari上都得到了較好的支持,W3C.cn上關於該屬性的說明還未及時更新。
實現想法就是將兩個要展示的p利用定位重疊在一起,其中一個首先圍繞Y軸旋轉一定角度,還要加上一個關鍵屬性backface-visibility:hidden
(該屬性定義當元素不面向螢幕時是否可見)。如果不加上這個屬性的話,那麼就會總是只能看到一張卡片了,失敗的效果如下:
下面就貼完整的程式碼:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="Content-Type" content="text/html"> <meta name="viewport" content="width=device-width, initial-scale=1,user-scalable=no"> <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1"> <title>CSS3实现卡片翻转效果</title> <style> .re-item { width: 220px; margin: 50px auto; height: 276px; cursor: pointer; position: relative; perspective: 500; -webkit-perspective: 500; } .re-item img { max-width: 220px; } .re-item-front, .re-item-back { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #fff; -webkit-perspective: 1000; /*backface-visibility: hidden;*/ -webkit-transition: all 1.5s; -moz-transition: all 1.5s; -ms-transition: all 1.5s; -o-transition: all 1.5s; box-shadow: rgba(50, 50, 50, 0.2) 0 0 15px; overflow: hidden; } .re-item-back { position: relative; transform: rotateY(-180deg); -webkit-transform: rotateY(-180deg); } .re-item:hover .re-item-front { transform: rotateY(-180deg); -webkit-transform: rotateY(-180deg); } .re-item:hover .re-item-back { transform: rotateY(-360deg); -webkit-transform: rotateY(-360deg); } .re-box .re-item dd { text-align: center; font-family: "微软雅黑"; } .re-item .re-item-job { margin: 2px 0; font-size: 18px; color: #303030; line-height: 40px; } .re-item .re-item-des { padding: 0 12px; font-size: 14px; color: #939393; } </style> </head> <body> <div class="re-box"> <div class="re-item"> <dl class="re-item-front"> <dt><img src="img/c2.jpg" / alt="coser"></dt> <dd class="re-item-job">coser</dd> <dd class="re-item-des">成为我们的合作coser,漫展返图,自由扩列,以及无偿拍摄&后期服务</dd> </dl> <div class="re-item-back"> <img src="img/c2_1.jpg" alt="苏苏" /> <button type="button" class="join_btn open_modal" data-id="2">立即加入</button> </div> </div> </div> </body> </html>
好好看看html結構,很多都是不需要的,最關鍵的結構如下,css你也看著刪除吧。
<p class="re-item"> <p class="re-item-front"></p> <p class="re-item-back"></p> </p>
我的實作程式碼即是如此,直接貼出來因為懶得刪。
【推薦學習:html影片教學】
#以上是html翻轉效果怎麼實現的詳細內容。更多資訊請關注PHP中文網其他相關文章!