三級導航純CSS實現
在網頁設計中,導航欄起到連接各個頁面的作用。導航欄的設計不能夠忽視,合理的導航設計能夠提升用戶體驗。本文將介紹一種純CSS實現三級導航欄的方法。
html結構如下:
```html
```
CSS樣式如下:
```css
.nav-bar {
height: 50px;
width: 100%;
background-color: #333;
}
.nav-list {
list-style: none;
margin: 0;
padding: 0;
}
.nav-list li {
float: left;
position: relative;
}
.nav-list li >a {
display: block;
color: #fff;
padding: 15px 20px;
text-decoration: none;
}
.nav-list li:hover a {
background-color: #555;
}
.nav-list li ul {
position: absolute;
left: 0;
top: 50px;
background-color: #555;
display: none;
width: 150px;
}
.nav-list li:hover ul {
display: block;
}
.nav-list li ul li a {
padding: 10px;
}
.nav-list li ul li:hover a {
background-color: #777;
}
.nav-list li ul li ul {
left: 150px;
top: 0;
display: none;
}
.nav-list li ul li:hover ul {
display: block;
}
```
通過設置ul的position為absolute,將下拉菜單脫離了文檔流。根據父元素的位置left、top,可以對下拉菜單的位置進行調整。display:none可以使下拉菜單初始狀態不可見,通過:hover偽類選擇器控制顯示。
在三級導航中,為了控制層級關系,需要設置子菜單的left和top。通過:hover偽類選擇器,可以控制子菜單的顯示。
總結
本文介紹了一種純CSS實現三級導航的方法。通過設置ul的position屬性和:hover偽類選擇器實現菜單的顯示和隱藏。希望本文能夠給大家提供在導航欄設計上的幫助和啟示。上一篇三種css樣式表