CSS3貝塞爾曲線示例:創(chuàng)建鏈接懸停動畫效果
我們將使用 CSS3 動畫過渡來創(chuàng)建簡單但引人入勝的鏈接懸停效果,將鼠標懸停在鏈接上時,會彈出一個小彈出框。
我們還將看一下CSS3 Cubic-Bezier(貝塞爾)曲線,它是 CSS 過渡,為彈出框提供了更加流暢的運動,而不是僵化的機械運動。
這是我們最后的效果:

讓我們開始吧!
HTML 部分
這是我們鏈接的 HTML,圖標來自 iconfont.cn。
<div class="container">
<section>
<a href="#">
<i class="fab fa-instagram"></i>
<span>Instagram</span>
</a>
<a href="#">
<i class="fab fa-github"></i>
<span>Github</span>
</a>
</section>
</div>
當您將鼠標懸停在鏈接上時,span 標簽將成為彈出框。接下來,我們進入 CSS。
CSS 樣式和動畫
我們將 div 容器居中,以使兩個鏈接在屏幕上居中。這也使對小彈出框進行動畫處理變得容易,因為它們將從鏈接的頂部彈出。
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%);
}
接下來,我們對鏈接進行樣式設置,創(chuàng)建簡單的背景懸停效果,并定位社交媒體圖標。
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%;
}
接下來,我們將對彈出文本進行樣式設置和動畫處理。
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);
} /* 當圖標處于懸停狀態(tài)時,文本將彈出 */
a:hover span {
bottom: 130px;
visibility: visible;
opacity: 1;
}
CSS3 Cubic-Bezier曲線由四個點p0,p1,p2和p3定義。 p0 點是曲線的起點,而 p3 點是曲線的終點。曲線越線性,運動就越僵硬(或不那么流暢)。
如果一個點一開始是正數(shù),而下一個點是負數(shù),那么運動一開始就會很慢。當點值變得比之前的點值高時,運動加快。
這就是 CSS 中 Cubic-Bezier 點的含義。由于動畫短,所以動作很細微。彈出框從正方形底部開始時緩慢開始,然后開始加速到頂部。
盡管您可以創(chuàng)建沒有 Cubic-Bezier 曲線過渡的動畫,但動畫的差異如下:
有 Cubic-Bezier 曲線過渡的動畫

沒有 Cubic-Bezier 曲線過渡的動畫

可以看到,動畫為懸停效果增添了生氣。
最后一組 CSS 涉及樣式化彈出框底部的小箭頭。要了解有關在 CSS 中如何制作三角形的更多信息,請查看此 CSS 技巧文章。
總結(jié)
我們創(chuàng)建了一個簡約的按鈕樣式鏈接。鏈接具有基本的背景懸停效果,但我們并沒有止步于此。我們添加了一個小彈出框來顯示鏈接的文本。在 CSS3 Cubic-Bezier 塞爾曲線的幫助下,動畫流暢且令人愉悅。
這類知識非常有用,可以作為你顯示社交媒體帳戶的網(wǎng)站設計的一部分。
本文示例演示和完整代碼請訪問如下地址,建議 PC 端打開 https://coding.zhanbing.site
以上就是CSS3貝塞爾曲線示例:創(chuàng)建鏈接懸停動畫效果的詳細內(nèi)容,更多關于CSS3貝塞爾曲線的資料請關注腳本之家其它相關文章!
相關文章
CSS3鼠標懸停按鈕陰影縮放特效代碼是一款紅色簡潔的方形按鈕,鼠標懸停按鈕突出放大陰影效果,非常漂亮。2020-11-18
這篇文章主要介紹了CSS3 實現(xiàn)時間軸動畫的示例代碼,幫助大家更好的理解和制作CSS3特效,美化網(wǎng)頁,感興趣的朋友可以了解下2020-11-25
這篇文章主要介紹了CSS3實現(xiàn)菜單懸停效果的示例代碼,幫助大家更好的制作CSS3特效,美化網(wǎng)頁,感興趣的朋友可以了解下2020-11-17- 這篇文章主要介紹了詳解CSS3:overflow屬性的相關資料,幫助大家更好的理解和制作CSS3特效,感興趣的朋友可以了解下2020-11-17
這篇文章主要介紹了詳解css3中的偽類before和after常見用法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-17
CSS3+HTML5+JS 實現(xiàn)一個塊的收縮與展開動畫效果
這篇文章主要介紹了CSS3+HTML5+JS 實現(xiàn)一個塊的收縮與展開動畫效果,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-17
10種CSS3實現(xiàn)的loading動畫,挑一個走吧?
這篇文章主要介紹了10種CSS3實現(xiàn)的loading動畫,幫助大家更好的美化自身網(wǎng)頁,完成需求,感興趣的朋友可以了解下2020-11-16
帶剪切動畫的幻燈片這是一款帶剪切動畫的幻燈片,幻燈片切換時,會以「左」、「右」箭頭為中心進行展開,適合通欄的設計?;脽羝褂昧?CSS3 屬性,不兼容低級瀏覽器,喜歡2020-11-16
詳解CSS3媒體查詢響應式布局bootstrap 框架原理實戰(zhàn)(推薦)
這篇文章主要介紹了詳解CSS3媒體查詢響應式布局bootstrap 框架原理實戰(zhàn)(推薦),本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的2020-11-16
CSS3懸停展開旋轉(zhuǎn)菜單特效代碼是一款鼠標移動到頭像上就會展開旋轉(zhuǎn)菜單特效。2020-11-16







