您好,登錄后才能下訂單哦!
這篇文章主要介紹了怎么用純CSS實現小球變矩形背景的按鈕懸停效果,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
代碼解讀
定義dom,導航中包含一個無序列表,列表中有一個列表項:
<nav>
<ul>
<li>home</li>
</ul>
</nav>
居中顯示:
body{
margin:0;
height:100vh;
display:flex;
align-items:center;
justify-content:center;
background-color:lightyellow;
}
隱藏列表項前端的引導符號:
navul{
padding:0;
list-style-type:none;
}
設置容器尺寸:
navli{
width:8em;
height:2em;
font-size:25px;
}
設置文字樣式:
navli{
font-size:25px;
text-align:center;
line-height:2em;
font-family:sans-serif;
text-transform:capitalize;
}
添加偽元素,偽元素是2個小球:
navli{
position:relative;
}
navli::before,
navli::after{
content:'';
position:absolute;
width:0.6em;
height:0.6em;
background-color:gainsboro;
border-radius:50%;
}
把小球定位在左右兩端:
navli::before{
top:calc(50%-0.6em/2);
left:0;
}
navli::after{
bottom:calc(50%-0.6em/2);
right:0;
}
接下來設置按鈕懸停效果。
當鼠標懸停在按鈕上時,讓小球變為與容器大小相等的矩形:
navli:hover::before,
navli:hover::after{
width:100%;
height:100%;
border-radius:0;
}
第其中一個矩形稍向右下角錯位,并且加深它的顏色,形成陰影效果:
navli:hover::before{
z-index:-1;
top:0;
}
navli:hover::after{
z-index:-2;
bottom:-0.4em;
right:-0.4em;
filter:brightness(0.8);
}
設置懸停的顏色,偽元素的矩形背景變為藍色,文字變為白色:
navli:hover{
color:white;
}
navli:hover::before,
navli:hover::after{
background-color:dodgerblue;
}
設置緩動時間,其中偽元素的緩動時間函數用擬人的動畫效果:
navli{
transition:0.5s;
}
navli::before,
navli::after{
transition:0.5scubic-bezier(0.5,-0.5,0.25,1.5);
}
再增加幾個按鈕:
<nav>
<ul>
<li>home</li>
<li>products</li>
<li>services</li>
<li>contact</li>
</ul>
</nav>
最后,增加按鈕之間的間距:
navli{
margin:0.8em;
}
感謝你能夠認真閱讀完這篇文章,希望小編分享的“怎么用純CSS實現小球變矩形背景的按鈕懸停效果”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。