一般网页常见到二级选单,利用 CSS 即可达成,有些会透过 JavaScript 增加更多效果,例如动画、延迟等。多级选单一般常使用 JavaScript 达成,不过透过 CSS 也能做出简单的多级选单。
###HTML
<nav><ul><li><ahref="">選單1</a></li><li><ahref="">選單2</a><ul><li><ahref="">選單2-1</a><ul><li><ahref="">選單2-1-1</a></li><li><ahref="">選單2-1-2</a></li></ul></li><li><ahref="">選單2-2</a></li><li><ahref="">選單2-3</a></li></ul></li><li><ahref="">選單3</a></li><li><ahref="">選單4</a></li></ul></nav>
選單的 HTML 如上,所有的選單物件都是可點選的連結,理論上無限層級。
###CSS
ulli{position:relative;/*使子選單依照母選單的座標顯示*/}/*設定母選單的連結樣式*/ullia{background:url(detail.png);}/*當母選單下沒有子選單時,也就是說只有一個連結時,隱藏detail.png*/ullia:only-child{background:none;}ulli:hover>ul{display:block;/*滑鼠滑入母選單後,顯示子選單*/}/*二級選單顯示於一級選單的正下方*/ulul{position:absolute;top:100%;list-style:none;display:none;}/*三級選單則顯示於二級選單的右方*/ululul{position:absolute;left:100%;top:0;}
这洋就完成了所有步骤,不需要繁复的 JavaScript,是不是很间单呢?
範例|下載
##后记