0

CSS でいくつかの項目を再配置する必要がありましたが、ドロップダウン メニューがブロックとして表示されなくなりました。ドロップダウン メニューは jquery で作成されていますが、コードが正しいことはわかっています。現在、それはhtmlまたはcssの問題です。css を投稿します。html が必要な場合はお知らせください。追加します。

HTML:

<nav id="navigation">
    <ul class="navList">
        <li><a class="navLink" href="">Home</a></li>

        <li id="navLink1"><a class="navLink" href="">Services</a></li>
        <ul class="dropDown" id="dropDown1">
            <li>Pricing</li>
            <li>Examples</li>
            <li>Additional Services</li>
        </ul>

        <li id="navLink2"><a class="navLink" href="">Info</a></li>
        <ul class="dropDown" id="dropDown2">
            <li>About Us</li>
            <li>Our Portfolio</li>
        </ul>

        <li><a class="navLink" href="">FAQ's</a></li>
    </ul>   
</nav>

CSS:

    #navigation{
    width: 100%;
    height: 50px;
    padding-bottom: 0px;
}
.navList li{
    list-style: none;
    text-align: left;
    display: inline;
    float: left;
    padding: 5px;
    margin-right: 25px;
    font-size: 20px;
    border-radius: 15px; 
}
.navList li:hover{
    background-color: #3399FF;
}
.navLink{
    text-decoration: none;
    color: black;
    text-shadow: 2px 2px 5px white;
}
.dropDown{
    position: absolute;
    z-index: 1;
    background-color: rgba(46, 184, 230, .9);
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    padding: 0px;
    border-left: 2px solid lightgray;
    border-right: 2px solid lightgray;
}
.dropDown li{
    list-style: none;
    text-align: left;
    padding: 5px;

}
.dropDown li:hover{
    background-color: #3399FF;
}
#dropDown1{
        top: 185px;
        left: 272px;
        display: none;
}
#dropDown2{
        top: 185px;
        left: 382px;    
        display: none;
}

それが役立つ場合は、ここに私のjsfiddleがあります

4

3 に答える 3

0

jQueryがドロップダウンメニューをオンにすると、ドロップダウンメニューがブロックとして表示されているようです。ul.dropDown 要素内の子 li 要素は、ブロックとして表示するように設定されていません。

また、メニューは #navLink1 要素と #navLink2 要素の外側にあるため、メニューにカーソルを合わせることができない場合があります。ドロップダウンを navLink に配置すると、これが役立つ場合があります。

<li id="navLink1">
  <a class="navLink" href="">Services</a>
  <ul class="dropDown" id="dropDown1">
    <li>Pricing</li>
    <li>Examples</li>
    <li>Additional Services</li>
  </ul>
</li>
于 2013-06-24T22:39:32.050 に答える
0

表示しています。なぜ垂直に表示されないのかというと、すべての li に対して float:left と display:inline があるためです。

.navList li{
list-style: none;
text-align: left;
***float:left;***
***display: inline;***
padding: 5px;
margin-right: 25px;
font-size: 20px;
border-radius: 15px; 
}

追加する必要があるのは次のとおりです。

.dropDown li{
list-style: none;
text-align: left;
padding: 5px;
***float:none;***
***display:block;***
}
于 2013-06-24T22:34:50.007 に答える