您好,登錄后才能下訂單哦!
這篇文章主要介紹css如何實現翻轉效果,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
css實現翻轉效果的方法:首先創建一個演示方塊,并為其添加transition和transform屬性;然后將transition屬性添加到需要翻轉的p上;最后添加perspective和transform-style屬性即可。
作為前端開發人員的必修課,CSS3能帶我們完成許多基本動效,本期我們將用CSS3實現hover翻轉效果~
第一步非常簡單,我們簡單畫1個演示方塊,為其 添加transition和transform屬性 :
// 本示例均使用Sass語法 .block { width: 200px; height: 200px; background: brown; cursor: pointer; transition: 0.8s; &:hover { transform: rotateY(180deg); } }
我們看一看這時候的效果:
這里 需要注意 的是: transition屬性要寫在.block上而不是hover上 ,如果只在hover上寫transition,則鼠標移出時并沒有transition的過渡效果,如果我們只將transition寫在hover上:
第二步比較關鍵:我們不難發現始終在1個平面上翻轉,不夠有立體感,因此我們需要稍加改變思路—— 用2層p嵌套
// html部分 <div class="block"> <div class="block-in"></div> </div>
// CSS部分 .block { width: 200px; height: 200px; cursor: pointer; &-in { background: brown; height: 100%; transition: 0.8s; } &:hover .block-in { transform: rotateY(180deg); } }
此時效果沒變,如下:
這個時候 關鍵的1步 來了:我們需要 給外層添加perspective和transform-style屬性 ,為整個動畫增添3D變形效果:
.block { width: 200px; height: 200px; cursor: pointer; /* 3D變形 */ transform-style: preserve-3d; -webkit-perspective: 1000; -moz-perspective: 1000; -ms-perspective: 1000; perspective: 1000; &-in { background: brown; height: 100%; transition: 0.8s; } &:hover .block-in { transform: rotateY(180deg); } }
最終實現效果如下:
最終我們 總結一下思路 :
1.建立內外2層p,鼠標 hover 到外層時,內層p添加翻轉 transform: rotateY(180deg)
2.注意將 transition 屬性添加到需要翻轉的p上,而不是 hover 時
3.外層p添加 perspective 和 transform-style 屬性,最終實現3D翻轉效果
以上是“css如何實現翻轉效果”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。