十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
本篇內(nèi)容介紹了“CSS3貝塞爾曲線中如何實(shí)現(xiàn)鏈接懸停動(dòng)畫效果”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、成都小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了巴彥淖爾免費(fèi)建站歡迎大家使用!
我們將使用 CSS3 動(dòng)畫過渡來創(chuàng)建簡單但引人入勝的鏈接懸停效果,將鼠標(biāo)懸停在鏈接上時(shí),會(huì)彈出一個(gè)小彈出框。
我們還將看一下CSS3 Cubic-Bezier(貝塞爾)曲線,它是 CSS 過渡,為彈出框提供了更加流暢的運(yùn)動(dòng),而不是僵化的機(jī)械運(yùn)動(dòng)。
這是我們最后的效果:
讓我們開始吧!
HTML 部分
這是我們鏈接的 HTML,圖標(biāo)來自 iconfont.cn。
當(dāng)您將鼠標(biāo)懸停在鏈接上時(shí),span 標(biāo)簽將成為彈出框。接下來,我們進(jìn)入 CSS。
CSS 樣式和動(dòng)畫
我們將 div 容器居中,以使兩個(gè)鏈接在屏幕上居中。這也使對(duì)小彈出框進(jìn)行動(dòng)畫處理變得容易,因?yàn)樗鼈儗逆溄拥捻敳繌棾觥?/p>
div.container { display: inline-block; position: absolute; top: 50%; left: 50%; -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
接下來,我們對(duì)鏈接進(jìn)行樣式設(shè)置,創(chuàng)建簡單的背景懸停效果,并定位社交媒體圖標(biāo)。
a { color: #fff; background: #8a938b; border-radius: 4px; text-align: center; text-decoration: none; position: relative; display: inline-block; width: 120px; height: 100px; padding-top: 12px; margin: 0 2px; -o-transition: all 0.5s; -webkit-transition: all 0.5s; -moz-transition: all 0.5s; transition: all 0.5s; -webkit-font-smoothing: antialiased; } a:hover { background: #5a665e; } i { font-size: 45px; vertical-align: middle; display: inline-block; position: relative; top: 20%; }
接下來,我們將對(duì)彈出文本進(jìn)行樣式設(shè)置和動(dòng)畫處理。
a span { color: #666; position: absolute; font-family: "Chelsea Market", cursive; bottom: 0; left: -15px; right: -15px; padding: 15px 7px; z-index: -1; font-size: 14px; border-radius: 5px; background: #fff; visibility: hidden; opacity: 0; -o-transition: all 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55); -webkit-transition: all 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55); -moz-transition: all 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55); transition: all 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55); } /* 當(dāng)圖標(biāo)處于懸停狀態(tài)時(shí),文本將彈出 */ a:hover span { bottom: 130px; visibility: visible; opacity: 1; }
CSS3 Cubic-Bezier曲線由四個(gè)點(diǎn)p0,p1,p2和p3定義。 p0 點(diǎn)是曲線的起點(diǎn),而 p3 點(diǎn)是曲線的終點(diǎn)。曲線越線性,運(yùn)動(dòng)就越僵硬(或不那么流暢)。
如果一個(gè)點(diǎn)一開始是正數(shù),而下一個(gè)點(diǎn)是負(fù)數(shù),那么運(yùn)動(dòng)一開始就會(huì)很慢。當(dāng)點(diǎn)值變得比之前的點(diǎn)值高時(shí),運(yùn)動(dòng)加快。
這就是 CSS 中 Cubic-Bezier 點(diǎn)的含義。由于動(dòng)畫短,所以動(dòng)作很細(xì)微。彈出框從正方形底部開始時(shí)緩慢開始,然后開始加速到頂部。
盡管您可以創(chuàng)建沒有 Cubic-Bezier 曲線過渡的動(dòng)畫,但動(dòng)畫的差異如下:
有 Cubic-Bezier 曲線過渡的動(dòng)畫
沒有 Cubic-Bezier 曲線過渡的動(dòng)畫
可以看到,動(dòng)畫為懸停效果增添了生氣。
最后一組 CSS 涉及樣式化彈出框底部的小箭頭。要了解有關(guān)在 CSS 中如何制作三角形的更多信息,請(qǐng)查看此 CSS 技巧文章。
總結(jié)
我們創(chuàng)建了一個(gè)簡約的按鈕樣式鏈接。鏈接具有基本的背景懸停效果,但我們并沒有止步于此。我們添加了一個(gè)小彈出框來顯示鏈接的文本。在 CSS3 Cubic-Bezier 塞爾曲線的幫助下,動(dòng)畫流暢且令人愉悅。
“CSS3貝塞爾曲線中如何實(shí)現(xiàn)鏈接懸停動(dòng)畫效果”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!