|
導讀網頁的本質就是超級文本標記語言,通過結合使用其他的Web技術(如:腳本語言、公共網關接口、組件等),可以創造出功能強大的網頁。因而,超級文本標記語言是萬維網(Web)編程的基礎,也就是說萬維網是建立... 網頁的本質就是超級文本標記語言,通過結合使用其他的Web技術(如:腳本語言、公共網關接口、組件等),可以創造出功能強大的網頁。因而,超級文本標記語言是萬維網(Web)編程的基礎,也就是說萬維網是建立在超文本基礎之上的。超級文本標記語言之所以稱為超文本標記語言,是因為文本中包含了所謂“超級鏈接”點。 本篇文章給大家帶來的內容是關于如何使用純CSS實現按鈕的懸停效果(附源碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。效果預覽
源代碼下載https://github.com/comehope/front-end-daily-challenges 代碼解讀定義 dom,容器是一個無序列表,包含 4 個元素,代表 4 個按鈕: <ul>
<li>home</li>
<li>products</li>
<li>services</li>
<li>contact</li>
</ul>居中顯示: body {
margin: 0;
height: 100vh;
display: flex;
align-items: center;
justify-content: center;
background: cornsilk;
}去掉列表項前面的符號: ul {
padding: 0;
list-style-type: none;
}設置按鈕的邊框和背景的樣式,背景采用漸變色,但漸變的方向依次交替: ul li {
box-sizing: border-box;
width: 15em;
height: 3em;
font-size: 20px;
border-radius: 0.5em;
margin: 0.5em;
box-shadow: 0 0 1em rgba(0,0,0,0.2);
}
ul li:nth-child(odd) {
background: linear-gradient(to right, orange, tomato);
}
ul li:nth-child(even) {
background: linear-gradient(to left, orange, tomato);
}設置按鈕上文字的樣式,依次交替居左或居右: ul li {
color: white;
font-family: sans-serif;
text-transform: capitalize;
line-height: 3em;
}
ul li:nth-child(odd) {
text-align: left;
padding-left: 10%;
}
ul li:nth-child(even) {
text-align: right;
padding-right: 10%;
}設置按鈕的透視效果,依次交替向左旋轉和向右旋轉,此時透視的距離是 ul li:nth-child(odd) {
transform: perspective(500px) rotateY(45deg);
}
ul li:nth-child(even) {
transform: perspective(500px) rotateY(-45deg);
}為按鈕增加懸停效果,使懸停時的透視距離變短為 ul li:nth-child(odd):hover {
transform: perspective(200px) rotateY(45deg);
padding-left: 5%;
}
ul li:nth-child(even):hover {
transform: perspective(200px) rotateY(-45deg);
padding-right: 5%;
}最后,設置一個緩動時間,使效果轉換變得平滑: ul li {
transition: 0.3s;
cursor: pointer;
}大功告成! 以上就是如何使用純CSS實現按鈕的懸停效果(附源碼)的詳細內容,更多請關注php中文網其它相關文章! 網站建設是一個廣義的術語,涵蓋了許多不同的技能和學科中所使用的生產和維護的網站。 |
溫馨提示:喜歡本站的話,請收藏一下本站!