在網頁設計中,動畫效果能夠為頁面帶來生動和活力,從而提升用戶體驗。而CSS 3D箭頭動畫可以讓你在網頁上實現許多酷炫的效果。
.arrow-wrapper { position: relative; display: inline-block; } .arrow-wrapper:before, .arrow-wrapper:after { content: ''; position: absolute; width: 0; height: 0; } .arrow-wrapper:before { border-left: 25px solid transparent; border-right: 25px solid transparent; border-bottom: 25px solid #333; transform-origin: center top; transform: rotateX(45deg); } .arrow-wrapper:after { border-left: 25px solid transparent; border-right: 25px solid transparent; border-top: 25px solid #333; transform-origin: center bottom; transform: rotateX(-45deg); top: 25px; } .arrow-wrapper:hover:before { transform: rotateX(-45deg); border-color: #ff5722; transition: border-color 0.3s ease-in-out; } .arrow-wrapper:hover:after { transform: rotateX(45deg); border-color: #ff5722; transition: border-color 0.3s ease-in-out; }
首先,我們要創建一個包含箭頭的元素的容器,將其設置為相對定位,以便我們在其中創建偽元素,這些元素將形成箭頭。我們在偽元素:before和:after中為箭頭定義邊框。在:before中,我們使用了透明的邊框來創建箭頭的斜面部分,而在:after中,我們使用透明的邊框來創建箭頭的直角部分。我們使用transform: rotateX()屬性來使得箭頭在X軸上旋轉,從而實現3D效果。
在:hover偽類下,我們使用transform: rotateX()將箭頭向相反方向旋轉,從而實現動畫效果。我們還將箭頭的邊框顏色設置為醒目的橙色,并使用transition: border-color屬性使邊框顏色漸變。
我們可以將這個CSS動畫應用于任何箭頭組件,使其在用戶指向時呈現3D效果。這是一個很好的方式,使用戶明確知道他們的指向,并且增加頁面的互動性。
上一篇css萬能輕浮