您好,登錄后才能下訂單哦!
小編給大家分享一下怎么使用純CSS代碼實現帶有金屬光澤的立體按鈕的動畫效果,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
代碼解讀
在dom中定義一個容器:
<divclass="box">BUTTON</div>
容器居中顯示:
html,body{
height:100%;
display:flex;
align-items:center;
justify-content:center;
background-color:skyblue;
}
設置按鈕的2d樣式,為了便于調整按鈕尺寸,使用了變量:
.box{
background:linear-gradient(toright,gold,darkorange);
color:white;
--width:250px;
--height:calc(var(--width)/3);
width:var(--width);
height:var(--height);
text-align:center;
line-height:var(--height);
font-size:calc(var(--height)/2.5);
font-family:sans-serif;
letter-spacing:0.2em;
border:1pxsoliddarkgoldenrod;
border-radius:2em;
}
設置按鈕的3d樣式:
.box{
transform:perspective(500px)rotateY(-15deg);
text-shadow:6px3px2pxrgba(0,0,0,0.2);
box-shadow:2px005pxrgba(0,0,0,0.2);
}
定義按鈕的鼠標劃過動畫效果:
.box:hover{
transform:perspective(500px)rotateY(15deg);
text-shadow:-6px3px2pxrgba(0,0,0,0.2);
box-shadow:-2px005pxrgba(0,0,0,0.2);
}
.box{
transition:0.5s;
}
用偽元素增加光澤:
.box{
position:relative;
}
.box::before{
content:'';
position:absolute;
width:100%;
height:100%;
background:linear-gradient(toright,transparent,white,transparent);
left:0;
}
定義光澤動畫效果:
.box::before{
left:-100%;
transition:0.5s;
}
.box:hover::before{
left:100%;
}
最后,隱藏容器之外的內容:
.box{
overflow:hidden;
}
大功告成!
以上是“怎么使用純CSS代碼實現帶有金屬光澤的立體按鈕的動畫效果”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。