本篇文章給大家?guī)?lái)的內(nèi)容是關(guān)于如何使用純CSS實(shí)現(xiàn)從按鈕兩側(cè)滑入裝飾元素的懸停特效(附源碼),有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對(duì)你有所幫助。
創(chuàng)新互聯(lián)專注于海林企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,商城網(wǎng)站定制開發(fā)。海林網(wǎng)站建設(shè)公司,為海林等地區(qū)提供建站服務(wù)。全流程按需設(shè)計(jì)網(wǎng)站,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
https://github.com/comehope/front-end-daily-challenges
定義 dom,容器是一個(gè)無(wú)序列表,列表項(xiàng)代表按鈕:
<ul> <li>home</li> </ul>
居中顯示:
body { margin: 0; height: 100vh; display: flex; align-items: center; justify-content: center; background: linear-gradient(deepskyblue, navy); }
去掉列表項(xiàng)前面的符號(hào):
ul { padding: 0; list-style-type: none; }
設(shè)置按鈕的文字樣式:
ul li { color: #ddd; font-size: 25px; font-family: sans-serif; text-transform: uppercase; }
用偽元素在按鈕的左側(cè)增加一個(gè)方塊:
ul li { position: relative; } ul li::before { content: ''; position: absolute; width: 100%; height: 100%; background: tomato; left: -100%; }
用偽元素在按鈕的右側(cè)增加一條下劃線:
ul li::after { content: ''; position: absolute; width: 100%; height: 0.2em; background: tomato; bottom: 0; left: 100%; }
接下來(lái)設(shè)置鼠標(biāo)懸停效果。
當(dāng)鼠標(biāo)懸停時(shí),左側(cè)的方塊移到文字所在位置:
ul li::before { transition: 0.4s ease-out; } ul li:hover::before { left: 100%; }
右側(cè)的下劃線移到文字所在位置,它的動(dòng)畫時(shí)間延遲到方塊的動(dòng)畫快結(jié)束時(shí)再開始:
ul li::after { transition: 0.3s 0.3s ease-out; } ul li:hover::after { left: 0%; }
同時(shí),提高文字的亮度:
ul li { transition: 0.3s; cursor: pointer; } ul li:hover { color: #fff; }
隱藏掉按鈕外的部分,使方塊和下劃線在默認(rèn)狀態(tài)下都不可見(jiàn),只有鼠標(biāo)懸停時(shí)它們才從兩側(cè)入場(chǎng):
ul li { overflow: hidden; }
最后,在 dom 中再增加幾個(gè)按鈕:
<ul> <li>home</li> <li>products</li> <li>services</li> <li>contact</li> </ul>
布局多個(gè)按鈕:
ul { display: flex; flex-direction: column; align-items: center; } ul li { margin: 0.5em; }
大功告成!
以上就是如何使用純CSS實(shí)現(xiàn)從按鈕兩側(cè)滑入裝飾元素的懸停特效(附源碼)的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注創(chuàng)新互聯(lián)其它相關(guān)文章!
分享名稱:純CSS實(shí)現(xiàn)懸停特效
分享URL:http://www.rwnh.cn/article20/jjecco.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、網(wǎng)站建設(shè)、虛擬主機(jī)、品牌網(wǎng)站制作、小程序開發(fā)、電子商務(wù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)