html - 在 CSS 中对齐下拉菜单

标签 html css drop-down-menu

我似乎无法制作下拉菜单 <ul>与它的 parent 对齐 <li> . 我做错了什么?

HTML:

<nav id="toolbar">
    <ul>
        <li>
        <a href="#">Section1</a></li>

        <li>
        <a href="#">Section2</a>
            <ul>
                <li>
                    <a href="#">SubA</a>
                </li>
            </ul>
        </li>

        <li>
            <a href="#">Section3</a>
                <ul>
                    <li><a href="#">SubB</a></li>
                </ul>
        </li>
        <li>
            <a href="#">Section4</a>
        </li>
    </ul>
</nav>

CSS:

#toolbar ul {list-style-type:none;
}

#toolbar ul li {display:block;
                position:relative;
                float:left;
                margin:0px 5px;
}

#toolbar li ul  {display:none;
}

#toolbar ul li:hover ul {display: block;
                      position:absolute;
}

Fiddle

最佳答案

ul 元素有一个由用户代理应用的默认 padding-left 值,所以通过删除它你得到你要求的对齐方式(还有一个边距由你添加,但我会忽略它,因为你自己添加了它)。

#toolbar ul {
    padding-left: 0;
}

或(如果您只想定位子菜单):

#toolbar ul ul {
    padding-left: 0;
}

Demo

关于html - 在 CSS 中对齐下拉菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20884575/

相关文章:

jquery - 在我的简单响应式菜单中添加一个简单的下拉菜单

asp.net-mvc-4 - DropDownlist 值作为 System.Collections.Generic.List`1[System.Web.Mvc.SelectListItem] 插入

javascript - 在php中从mysql复制带有嵌入式下拉列表的html表单javascript

javascript - 如何将视频嵌入到没有自己网站详细信息的网站中?

没有alert()的Javascript验证表单

javascript - "hover"CSS 选择器内的代码停止工作

html - Wordpress 短代码从内联样式中删除斜杠?

javascript - 用 JavaScript 替换 HTML 改变了样式,图像不再水平内嵌

css - 使轮播在所有设备中响应

html - 在 html 中单击之前如何使视频播放没有声音?