這次帶給大家CSS3二級導航選單製作步驟詳解,CSS3二級導航選單製作的注意事項有哪些,以下就是實戰案例,一起來看一下。
如果想要實現網頁的二級導航,我們可以使用JS技術,動態的顯示和隱藏二級選單,當然也可以使用CSS技術來實現。並且這裡推薦使用CSS,因為其效率更高,更流暢。這裡將介紹二級選單的動態顯示與隱藏。
1 結構
一般導覽的主體我們主要使用ul li標籤
<body> <header> <!-- 一级导航开始 --> <nav> <ul class="menu"> <li> <a href="#">首页</a> </li> <li> <a href="#">产品</a> <!-- 二级导航开始 --> <ul class="submenu"> <li><a href="#">小程序</a></li> <li><a href="#">微信</a></li> <li><a href="#">企业站</a></li> </ul> <!-- 二级导航结束 --> </li> <li> <a href="#">服务</a> <!-- 二级导航开始 --> <ul class="submenu"> <li><a href="#">技术支持</a></li> <li><a href="#">产品外包</a></li> </ul> <!-- 二级导航结束 --> </li> <li><a href="#">关于我们</a></li> <li><a href="#">人才招聘</a></li> </ul> </nav> <!-- 一级导航结束 --> </header> </body>
2 佈局
導航的佈局,由於子元素要隨著父元素,所以對二級選單選取定位佈局。要想讓多個li在一行中顯示,那麼就需要讓li進行浮動。
body{margin: 0; font-size: 14px; color: #666} ul,ol{margin: 0;padding: 0; list-style: none;} a {text-decoration: none; color: #666;} /*一级导航*/ /*背景色*/ ul.menu,ul.submenu { background-color: #ededed; } /*一级导航浮动*/ ul.menu::after { content: ''; display: block; clear: both; } ul.menu > li { float: left; width: 120px; line-height: 3em; height: 3em; text-align: center; cursor:pointer; } /*二级导航项分割线*/ ul.submenu { /*默认隐藏*/ display: none; } ul.submenu > li { border-bottom: 1px solid #fff; } /*内容区*/ .content { min-height: 800px; background-color: #fff; }
3. 二級選單顯示特效
遊標放到導覽上,目前元素背景色變深,字體顏色變淡。
如果有二級選單,顯示二級選單
為了實現上述兩個特效,我們可以利用偽類別選擇器(:hover)來捕捉遊標懸浮的操作。並且使用偽類選擇器(:hover)來選擇到當前選單對應的二級選單
利用以下CSS可以快速實現該特效。
/*选中特效*/ ul.menu > li:hover { background-color: #666; } ul.menu > li:hover > a { color: #fff; } ul.menu > li:hover > ul.submenu { display: block; }
4. 動畫
上述程式碼中二級選單的顯示是瞬間的。能否提供一個緩慢動畫過渡的效果,當然也是沒問題。這裡需要使用animation來進行動畫的配置,那麼動畫幀可以自己寫或是尋求第三方程式碼庫(animate.css)的支援。這裡我將使用透明度來實現這個淡入效果
/*动画帧*/ @keyframes fade { from { opacity: 0; } to { opacity: 1; } } /*基础动画样式*/ .animated { animation-duration: 1s; animation-fill-mode: both; } .fadeIn { animation-name: fade; animation-direction: normal; }
動畫定義好後,可以直接將動畫樣式引用到ul.submenu上,注意,如果使用的是animate.css,那麼上述步驟將省略,直接用其提供好的動畫樣式即可。
<!-- 二级导航开始 --> <ul class="submenu animated fadeIn"> <li><a href="#">小程序</a></li> <li><a href="#">微信</a></li> <li><a href="#">企业站</a></li> </ul> <!-- 二级导航结束 -->
相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
以上是CSS3二級導覽選單製作步驟詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!