• 
    

      <address id="upfr9"><pre id="upfr9"><strike id="upfr9"></strike></pre></address>
      1. <address id="upfr9"><tr id="upfr9"></tr></address><dl id="upfr9"></dl>

        簡單的CSS下拉菜單制作方法

        2024-03-21    分類: 網(wǎng)站建設(shè)

        鼠標(biāo)懸停下拉菜單在網(wǎng)頁中很常見,一般的下拉菜單都是通過 JavaScript 對菜單的顯示和隱藏進(jìn)行控制,其實用純粹的CSS 也可以實現(xiàn)。用CSS下拉菜單的幾點好處是,不需要考慮客戶端瀏覽器是否禁用了 JS,而且用 CSS下拉菜單效率比 JS 要高,還可以方便地制定樣式和定位。

        CSS下拉菜單演示地址

        首先寫出 HTML 代碼如下:

        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>css下拉菜單title>
        <link rel="stylesheet" type="text/css" href="test.css" />
        head>
        <body>
        <ul id="navigation">
        <li>
        <a href="#">欄目1a>
        <ul>
        <li><a href="#">欄目1-->CSS下拉菜單1a>li>
        <li><a href="#">欄目1-->CSS下拉菜單2a>li>
        <li><a href="#">欄目1-->CSS下拉菜單3a>li>
        <li><a href="#">欄目1-->CSS下拉菜單4a>li>
        ul>
        li>
        <li>
        <a href="#">欄目2a>
        <ul>
        <li><a href="#">欄目2-->菜單1a>li>
        <li><a href="#">欄目2-->菜單2a>li>
        <li><a href="#">欄目2-->菜單3a>li>
        <li><a href="#">欄目2-->菜單4a>li>
        <li><a href="#">欄目2-->菜單5a>li>
        ul>
        li>
        <li>
        <a href="#">欄目3a>
        <ul>
        <li><a href="#">欄目3-->CSS下拉菜單1a>li>
        <li><a href="#">欄目3-->CSS下拉菜單2a>li>
        <li><a href="#">欄目3-->CSS下拉菜單3a>li>
        ul>
        li>
        ul>
        body>
        html>

        在沒有 CSS 的情況下,它顯示為一個最基本的無序列表的樣式:

        下面編寫 CSS,代碼如下:

        body {
        font-family:verdana, sans-serif;
        font-size:small;
        }
        #navigation , #navigation li ul{
        padding:0;
        margin:0;
        list-style-type: none;
        }
        #navigation li {
        float:left;
        text-align:center;
        position:relative;
        }
        #navigation li a:link, #navigation li a:visited {
        display:block;
        text-decoration:none;
        color:#000;
        width:120px;
        height:40px;
        line-height:40px;
        border:1px solid #fff;
        border-width:1px 1px 0 0;
        background:#c5dbf2;
        padding-left:10px;
        }
        #navigation li ul {
        display: none;
        }

        /* 以下只支持非IE6瀏覽器 */
        #navigation li:hover a {
        color:#fff;
        background:#2687eb;
        }
        #navigation li:hover ul {
        display:block;
        position:absolute;
        top:40px;
        margin-top:1px;
        left:0;
        width:120px;
        }
        #navigation li:hover ul li a {
        display:block;
        background:#c5dbf2;
        color:#000;
        height:20px;
        line-height:20px;
        padding:5px 10px;
        width:110px;
        }
        #navigation li:hover ul li a:hover {
        color:#fff;
        background:#6b839c;
        }
        把 CSS 引入頁面后,下拉菜單就做好了,效果是這樣的(鼠標(biāo)停在“欄目1”上的效果):

        你可能注意到了,我在 CSS 代碼中使用了 li:hover 這個偽類選擇器,這在 Firefox、Opera 等瀏覽器中都沒有問題,但是有一個很嚴(yán)重的問題就是:在 IE6 中,hover 偽類僅可用于 a 標(biāo)簽,li:hover 在 IE6 中是無效的。所以,這個下拉并沒有在 IE6 中實現(xiàn),我們需要針對 IE6 作出一些改進(jìn)。既然它只支持 a:hover,那我們就想辦法把需要控制的下拉菜單寫進(jìn) 標(biāo)簽中。

        改進(jìn)后的 HTML 代碼如下:

        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>css下拉菜單title>


        head>
        <body>
        <ul id="navigation">
        <li>
        <a href="#">欄目1

        <table><tr><td>
        <ul>
        <li><a href="#">欄目1-->CSS下拉菜單1a>li>
        <li><a href="#">欄目1-->CSS下拉菜單2a>li>
        <li><a href="#">欄目1-->CSS下拉菜單3a>li>
        <li><a href="#">欄目1-->CSS下拉菜單4a>li>
        ul>
        td>tr>table>



        li>
        <li>
        <a href="#">欄目2
        <table><tr><td>
        <ul>
        <li><a href="#">欄目2-->菜單1a>li>
        <li><a href="#">欄目2-->菜單2a>li>
        <li><a href="#">欄目2-->菜單3a>li>
        <li><a href="#">欄目2-->菜單4a>li>
        <li><a href="#">欄目2-->菜單5a>li>
        ul>
        td>tr>table>



        li>
        <li>
        <a href="#">欄目3
        <table><tr><td>
        <ul>
        <li><a href="#">欄目3-->CSS下拉菜單1a>li>
        <li><a href="#">欄目3-->CSS下拉菜單2a>li>
        <li><a href="#">欄目3-->CSS下拉菜單3a>li>
        ul>
        td>tr>table>
        ,


        li>
        ul>
        body>
        html>
        針對 IE6 的 CSS 代碼如下:

        body {
        font-family:verdana, sans-serif;
        font-size:small;
        }
        #navigation , #navigation li ul{
        padding:0;
        margin:0;
        list-style-type: none;
        }
        #navigation li {
        float:left;
        text-align:center;
        position:relative;
        }
        #navigation li a:link, #navigation li a:visited {
        display:block;
        text-decoration:none;
        color:#000;
        width:120px;
        height:40px;
        line-height:40px;
        border:1px solid #fff;
        border-width:1px 1px 0 0;
        background:#c5dbf2;
        padding-left:10px;
        }
        #navigation li ul{
        display: none;
        }
        table {
        margin:-1px;
        border-collapse:collapse;
        }
        /* 以下針對IE6 */
        #navigation li a:hover {
        color:#fff;
        background:#2687eb;
        }
        #navigation li a:hover ul {
        display:block;
        position:absolute;
        top:40px;
        margin-top:1px;
        left:0;
        width:120px;
        }
        #navigation li a:hover ul li a {
        display:block;
        background:#c5dbf2;
        color:#000;
        height:20px;
        line-height:20px;
        padding:5px 10px;
        width:110px;
        }
        #navigation li a:hover ul li a:hover {
        color:#fff;
        background:#6b839c;
        }
        改進(jìn)之后已經(jīng)達(dá)到了我們預(yù)期的目的,在多種瀏覽器中都實現(xiàn)了鼠標(biāo)懸停下拉菜單。

        CSS下拉菜單演示地址

        改進(jìn)的地方主要有:針對 IE6 重新寫了一個 CSS,命名為 testforIE.css;通過 IE 和非 IE 瀏覽器的條件注釋 實現(xiàn)了針對不同的瀏覽器設(shè)定 標(biāo)簽不同的結(jié)束位置,從而可以在 IE6 中通過 a:hover 來控制下拉菜單;把下拉菜單的

        放在了一個只有一行一列的表格中,因為我目前發(fā)現(xiàn)只有這樣才可以在 IE6 創(chuàng)新互聯(lián)常顯示,具體的原因還不是很清楚。

        到此,用純CSS下拉菜單就制作完成了。

        網(wǎng)頁名稱:簡單的CSS下拉菜單制作方法
        轉(zhuǎn)載注明:http://www.jbt999.com/news0/321100.html

        成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號面包屑導(dǎo)航、網(wǎng)站制作、服務(wù)器托管、App設(shè)計、網(wǎng)站內(nèi)鏈

        廣告

        聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:[email protected]。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

        營銷型網(wǎng)站建設(shè)

      2. 
        

          <address id="upfr9"><pre id="upfr9"><strike id="upfr9"></strike></pre></address>
          1. <address id="upfr9"><tr id="upfr9"></tr></address><dl id="upfr9"></dl>
            超碰在线免费 | 久久,久久成人电影 | 亚洲在在线观看 | 日韩精品在线免费观看 | www噜噜偷拍在线视频 | 激情视频乱伦小说站 | 欧美性生交大片免费看A片免费 | 欧美亚洲日韩电影 | 国产精品视频在线免费 | 一级黄色片免费看 |