網頁設計是一個非常關鍵的方面,而CSS的運用更是其中的重要一環。如果你想要讓你的網站變得更加生動活潑,那么一個好的CSS動畫效果可以讓你的網站更具吸引力。在這里,我們想要分享一個叫做翻書頁的魔板,它可以為你的網站帶來更多的生動感。下面是這個魔板的代碼:
.book { position: relative; width: 290px; height: 400px; margin: 0 auto 200px; perspective: 1500px; } .flip { position: absolute; left: 0; top: 0; width: 100%; height: 100%; transition: transform 0.9s; transform-style: preserve-3d; } .front, .back { position: absolute; top: 0; left: 0; width: 100%; height: 100%; backface-visibility: hidden; } .front { background-color: #fff; transform: rotateY(0deg); } .back { background-color: #dedede; transform: rotateY(-180deg); } .flip:hover { /*將書頁翻過來*/ transform: rotateY(-180deg); }
這個魔板的實現是通過CSS的transform屬性實現的。我們將整個書籍的容器設置為.book,并設置其position屬性為relative實現容器的相對定位。我們還設置了perspective屬性,這個屬性決定了元素被查看時的視角,它類似于一個相機的焦距設置。我們設置為1500px,這樣可以讓書頁有一個明顯的近大遠小的效果。
接下來,我們將書頁翻轉的效果實現了起來。我們為書籍容器.book包裹了一個div,它的class為flip,這個div代表書頁的翻轉部分。我們設置了一個transition來實現書頁翻轉的動畫,同時通過transform-style: preserve-3d來確保書頁在旋轉過程中不會扭曲變形。
.front和.back都是書頁的正反兩面,我們設置它們的position屬性為absolute,這樣可以讓它們重疊在一起。為了防止在進行翻轉動畫的過程中,元素會出現閃爍等不良現象,我們設置了backface-visibility: hidden來確保元素被旋轉后不顯示背面。
最后就是鼠標懸停的效果了。我們為書頁容器.flip添加了:hover偽類,將transform屬性從0°變為-180°,即完成了書頁翻轉的效果。這樣,我們就完成了一個簡單的書頁翻轉的魔板效果。
上一篇css寫動畫禎嘴巴閉合
下一篇網頁css樣式加載不出來