0

我创建了一个具有两个级别的纯 CSS 下拉菜单。第一级工作正常。但是第二层,必须飞出到父li的左侧,出现在li上方的固定位置。请参考http://joomlaosw.oswebware.com/(菜单项“关于模板”)

正如您会观察到的,所有飞出子菜单的位置对于所有 li 都是固定的。我希望飞出子菜单与父 li 保持一致。PS:我还不熟悉 jQuery,这就是我选择纯 CSS 菜单的原因。

请给我您宝贵的建议。

这是我的第一个模板,因此也欢迎任何改进我的工作的建议(除了主要问题)。提前致谢。阿努

请注意,这只是代码的相关部分...您可以使用 firebug 进行检查,或者如果需要,我将发送完整代码...

html代码

    <ul class="menu ">
    <li class="item-101 current active"><a href="/">Home</a>
    </li>
    <li class="item-109 deeper parent"><a href="/">About Template</a>
        <ul>
            <li class="item-103 deeper parent"><a href="/index.php/2013-09-14-00-17-18/typography">Typography</a>
                <ul>
                    <li class="item-125"><a href="/">Sub Menu I</a>
                    </li>
                </ul>
            </li>
            <li class="item-112 deeper parent"><a href="/index.php/2013-09-14-00-17-18/module-positions">Module Positions</a>
                <ul>
                    <li class="item-126"><a href="/">Sub Menu II</a>
                    </li>
                </ul>
            </li>
            <li class="item-113 deeper parent"><a href="/index.php/2013-09-14-00-17-18/styles">Styles</a>
                <ul>
                    <li class="item-121"><a href="/index.php/2013-09-14-00-17-18/styles/blue">Blue</a>
                    </li>
                    <li class="item-123"><a href="/index.php/2013-09-14-00-17-18/styles/green">Green</a>
                    </li>
                    <li class="item-124"><a href="/index.php/2013-09-14-00-17-18/styles/black">Black</a>
                    </li>
                    <li class="item-122"><a href="/index.php/2013-09-14-00-17-18/styles/red">Red</a>
                    </li>
                </ul>
            </li>
        </ul>
    </li>
    <li class="item-110"><a href="/">Buy Now</a>
    </li>
    <li class="item-111"><a href="/">Contact Us</a>
    </li>
</ul>

CSS

    .menu {
    margin: 100px auto;
    text-align: center;
}
.menu ul {
    display: none !important;
}
.menu ul li:hover > ul {
    display: block;
}
.menu li:hover > ul {
    display: block !important;
    top: 20px;
    position: absolute;
    width: 150px;
}
.menu ul {
    background-color: #FFFFFF;
    padding: 0 20px;
    list-style: none;
    position: relative;
    display: inline-table;
    margin-top: -5px !important;
    z-index:3;
}
.menu ul li {
    float: left;
}
.menu ul li a {
    display: block;
    padding: 25px 40px;
    color: #757575;
    text-decoration: none;
}
.menu ul ul {
    padding: 0;
    position: relative;
    top: 0;
    left:100%;
}
.menu ul ul li {
    float: left;
    position: relative;
}
.menu ul ul li a {
    padding: 15px 40px;
    color: #fff;
}
.deeper.parent ul li a {
    border: medium none !important;
    padding: 15px 0 0 !important;
    margin-top: -5px;
}
4

1 回答 1

0

为您的菜单部分提供 html 代码和 css。

于 2013-09-19T05:18:48.500 回答