CSS Mobile Navigation菜单 - 下拉菜单没有正确嵌套

时间:2015-06-29 16:58:48

标签: html css navigation

我希望我能清楚地解释这一点。您可以访问我的网站:http://membershq.incentiveusa.com/AwardPages/GoalUp_Test2/index_test2.html

导航菜单在移动设备格式时,主导航顶部有下拉链接,而不是嵌套在其中并向下推动其余链接。

CSS:

.navigation{
margin-right: auto;
margin-left: auto;
width: 100%;
background-color: #0f9cde;
position: absolute;
display: block;
margin-bottom: 15px;
z-index: 1000;
top: 735px;
margin-left: -15px;
}
/*Strip the ul of padding and list styling*/
.navigation ul{
list-style-type: none;
margin: 0 auto;
padding: 0;
position: relative;
z-index: 1000;
text-align:center;



}

/*Create a horizontal list with spacing*/
.navigation li{
display:inline-block;
margin-right: 0px;
background-color:#0f9bde;
vertical-align: top;
}

/*Style for menu links*/
.navigation li a {

min-width: 189px;
height: 50px;
text-align: center;
line-height: 50px;
font-family: 'Maven Pro', sans-serif;
font-size:18px;
color: #fff;
width:100%;
background-color: #0f9cde;
text-decoration: none;
display:block;

}

/*Hover state for top level links*/
.navigation li:hover a {
color: #f7a800;
text-decoration: underline;
}

/*Style for dropdown links*/
.navigation li:hover ul a {
background: #f7a800;
color: #ffffff;
height: 40px;
line-height: 40px;

}

/*Hover state for dropdown links*/
.navigation li:hover ul a:hover {
background: #fff;
color: #f7a800;
}

/*Hide dropdown links until they are needed*/
.navigation li ul{
display: none;
position: absolute;
}

/*Make dropdown links vertical*/
.navigation li ul li {
display: block;
float: none;
}

/*Prevent text wrapping*/
.navigation li ul li a {
width: auto;
min-width: 100px;
padding: 0 20px;
}

.navigation ul li:hover ul{
display:block;
}

/*Display the dropdown on hover*/
.navigation ul li a:hover  {
display: block;

}



/*Style 'show menu' label button and hide it by default*/
.show-menu {
font-family:'Maven Pro', sans-serif;
text-decoration: none;
color: #fff;
background: #f7a800;
text-align: center;
padding: 10px 0;
display: none;
}

/*Hide checkbox*/
input[type=checkbox]{
display: none;
-webkit-appearance: none;
}

/*Show menu when invisible checkbox is checked*/
input[type=checkbox]:checked ~ #menu{
display: block;
}

#menu ul {min-width: 189px; }

/*Responsive Styles*/

@media screen and (max-width : 975px){
/*Make dropdown links appear inline*/
.navigation ul {
    position: static;
    display: none;
}
/*Create vertical spacing*/
.navigation li {
    margin-bottom: 1px;
}
/*Make all menu links full width*/
.navigation ul li, li a {
    width: 100%;
}
.navigation li ul li {
    width: 100%;
}
#menu ul {min-width: 100%;}
/*Display 'show menu' link*/
.show-menu {
    display:block;
}
}

这是HTML:

<div class="container-fluid">
<div class="section-title2 text-center">
    <div class="navigation">
        <label for="show-menu" class="show-menu">Show Menu</label>
        <input type="checkbox" id="show-menu" role="button">
            <ul id="menu">
                <li>
                    <a href="about.html">About Us</a>
                    <ul>
                        <li>
                            <a href="news.html">News</a>
                        </li>
                    </ul>
                </li>
                <li>
                    <a href="HowItWorks.html">How It Works</a>
                    <ul>
                        <li>
                            <a href="FactsStats.html">Facts</a>
                        </li>
                        <li>
                            <a href="ParentingTools.html">Tools</a>
                        </li>
                    </ul>
                </li>
                <li>
                    <a href="testimonials.html">Testimonials</a>
                </li>
                <li>
                    <a href="awards.html">Brand Name Awards</a>
                </li>
                <li>
                    <a href="contact.html">Contact</a>
                </li>
            </ul>
        </div>
    </div>
</div>

1 个答案:

答案 0 :(得分:0)

你的问题与这种风格有关:

.navigation li ul{
    display: none;
    position: absolute;
}

删除您在移动广告时段可能需要的position: absolute;

像这样:

@media screen and (max-width : 975px){
  .navigation li ul{
      position: static;
  }
}