html - 自定义 CSS 导航菜单,无下拉菜单

标签 html css menu navigation

所以我有一个我正在尝试制作的自定义导航菜单,但我似乎无法让它工作。我已经包含了我的代码和我的 css 代码。我有 3 个子菜单,将鼠标悬停在父菜单上应该显示它们,但实际上没有。

有什么想法吗?

HTML代码:

<div class="menu">
    <div class="menu-padder">
    <a href="">Item 1</a>
    <a href="">Item 2</a>
    <li class="submenu">
    <a href="">Subitem 1</a>
    <a href="">Subitem 2</a>
    </li>
    <a href="">Item 3</a>
    <li class="submenu">
    <a href="">Subitem 1</a>
    <a href="">Subitem 2</a>
    </li>
    <a href="">Item 4</a>
    <li class="submenu">
    <a href="">Subitem 1</a>
    <a href="">Subitem 2</a>
    </li>   
    <a href="">Item 5</a>
    </div>
    </div>

CSS 代码:

.menu {
    background-image: url('img/menu.jpg');
    width: 1000px;
}
.menu-padder {
    padding:5px;
}
.menu a {
    padding:5px;
    color:white;
    text-decoration:none;
    font-weight:bold;
}
.menu a:hover {
    padding:5px;
    color:yellow;
    text-decoration:none;
}
.submenu {
    display:none;
    padding:0px;
}
a:hover .submenu {
    display:block;
}

最佳答案

这不是创建菜单的正确方法,您需要更改 HTML 和 CSS:

DEMO

<div class="menu">
    <div class="menu-padder">
        <ul>
            <li><a href="">Item 1</a></li>
            <li>
                <a href="">Item 2</a>
                <ul class="submenu">
                    <li><<a href="">Subitem 1</a></li>
                    <li><<a href="">Subitem 2</a></li>
                </ul>
            </li>
            <li>
                <a href="">Item 3</a>
                <ul class="submenu">
                    <li><<a href="">Subitem 1</a></li>
                    <li><<a href="">Subitem 2</a></li>
                </ul>
            </li>
            <li>
                <a href="">Item 4</a>
                <ul class="submenu">
                    <li><<a href="">Subitem 1</a></li>
                    <li><<a href="">Subitem 2</a></li>
                </ul>
            </li>
            <li><a href="">Item 5</a></li>
        </ul>
    </div>
</div>

但是如果你想让你的 HTML 只使用这个选择器:

a:hover + .submenu, .submenu:hover {
    display:block;
}

并更改此样式:

.submenu {
    display:none;
    padding:0px;
    position:absolute;
    width:100%;  /* or something else */
}

DEMO

关于html - 自定义 CSS 导航菜单,无下拉菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20722956/

相关文章:

jquery - 当您在其外部单击时,Bootstrap 3 移动导航会崩溃

css - 如何在父 div 中居中数据?

css - 如何在顶部添加带有标题行的导航菜单

C# WinAPI 点击菜单项

javascript - 将参数从 <div id ="container"传递给 javascript 函数

javascript - Safari BlobUrl 30mb 限制

html - 带有居中文本和左对齐图像的按钮

html - Paper.js VS EaselJS VS Fabric.js VS KineticJS

html - 如何将导航栏与 Logo 对齐?

javascript - 如何将 JSON 动态插入到 Accordion 菜单中?