首頁 >web前端 >html教學 >CSS3二級導覽選單製作步驟詳解

CSS3二級導覽選單製作步驟詳解

php中世界最好的语言
php中世界最好的语言原創
2018-05-07 17:43:094563瀏覽

這次帶給大家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中文網其它相關文章!

推薦閱讀:

H5 WebWorkers多執行緒開發使用詳解

CSS與媒體查詢實現網頁導航功能(附程式碼)

以上是CSS3二級導覽選單製作步驟詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn