0

我正在构建一个带有子菜单的导航菜单,其中只有 CSS(媒体查询)和 html。

它在视觉上工作正常,但问题是:在移动浏览器上,当我点击任何子菜单时,它不起作用,有时它只是重定向到第一个菜单地址,有时它甚至不重定向。在计算机浏览器上也可以正常工作。

这是我的代码:

#nav{
    position: relative;
    height: 100%;
}

#nav ul{
    margin: 0px;
    padding: 0px;
    height: 100%;
}


#nav ul li{
    list-style: none;
    float: left;
    height: 100%;
    border-right: black solid 2px;
    text-align: center;
    padding: 0px 15px 0px 15px;
}

#nav ul li:hover{
    background: #47350e;
}

#nav ul li a{
    position: relative;
    font-family: 'Oswald';
    font-size: 18px;
    color: white;
    text-transform: uppercase;
    text-decoration: none;
    top: 15px;
}

#nav ul li a:hover{

}

#nav ul li .children li{
    border: 0px;
}

#nav ul li .children li a{
    font-size: 13px;
    top: 5px;
    font-weight: normal;
}


#nav ul li .children li a:hover{
    text-decoration: underline;
}

#nav ul li .children{
    display: none;
    position: absolute;
    left: 0px;
    top: 46px;
    height: 30px;
    width: 100%;
    background: #47350e;
    padding-left: 120px;
    z-index: 5;
}

#nav ul li:hover .children{
    display: block;
}

和 HTML

<div id="nav">
            <ul id="nav-items">

                <li>
                    <a href=#>option 1</a>
                </li>
                <li>
                    <a href=#>option 2</a>
                    <ul class="children">
                        <li>
                            <a href=#>option 3</a>
                        </li>
                        <li>
                            <a href=#>option 4</a>
                        </li>

                    </ul>
                </li>

            </ul>
        </div>
4

2 回答 2

3

对于移动版本,您可以使用选择菜单。

   <div id="mobile_menu">
    <select>
<option>option1</option>
<option>option2</option>
<option>option3</option>
</select>
    </div>

CSS 处于正常 css 中

#mobile_menu{display:none;}

对于手机

    @media only screen and (min-width: 320px) and (max-width: 479px) {
    #mobile_menu{display:block;}
#nav{display:none;}
}
于 2013-03-22T10:46:11.807 回答
0

Possibly your #nav ul li a { rule is creating the mess.

position: relative;
top: 15px;

is working for both the levels, i.e. option 1 and option 3

Check if this is the issue. If do not resolve please share the link to your code.

于 2013-03-22T10:42:55.170 回答