css - 子导航隐藏在水平菜单中,自动溢出

标签 css menu overflow horizontallist

我构建了一个带有一个子导航列表的简单水平菜单,但我遇到了让子导航可见的麻烦。根据 overflow: auto 指令,我知道这个菜单被 .wrapper 截断了。

顺便说一句,我能做些什么来实现目标吗? .wrapper 结构应该是这样的 ----- ------ |标志导航图标 | ----- ------ 左侧的 Logo ,旁边是带有子菜单的导航列表。在右侧,应该有图标。

我的问题在这里表示:https://jsfiddle.net/4mor5g80/2/ 有什么提示/想法吗?

谢谢, 雅各布

最佳答案

也需要为.wrapper设置float:left;width:100%,因为里面所有的元素都有float等等, .wrapper 需要有它的内容的高度并且还设置 overflow:visible 而不是 auto

body {
    background: #fff;
}

div.wrapper {
    background: #2e2e2e;
    min-height: 10px;
    overflow: visible;
    float:left;
    width:100%;
}

div.wrapper .info {float: right;}

div.wrapper .logo {
    float: left;
    margin-right: 2em;
    min-height: 10px;
}

ul {
    list-style-type: none;
    margin: 0;
    padding: 10px 0;
    float: left;
}
ul li ul {
    list-style-type: none;
    margin: 0;
    padding: 10px 0;

}

li {
    display: inline;
    padding: 10px 0;
    position: relative;
}

li a {
    color: white;
    text-align: center;
    padding: 10px 16px;
    text-decoration: none;
}

li a:hover {
    background-color: green;
}
.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    top: 100%;
    left: 0;
}

.dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    text-align: left;
}

.dropdown-content a:hover {background-color: #f1f1f1}

ul li:hover .dropdown-content {
    display: block;
}

h3 {
  clear: both; 
}
}
<div class="wrapper">
<p class="logo">logo</p>
<ul>
  <li><a class="active" href="#home">Home</a></li>
  <li><a href="#news">News</a></li>
  <li>
    <a href="#">Dropdown</a>
    <ul class="dropdown-content">
      <li><a href="#">Link 1</a></li>
      <li><a href="#">Link 2</a></li>
      <li><a href="#">Link 3</a></li>
    </ul>
  </li>
</ul>
<div class="info"><a href="a">Test</a></div>
</div>
<h3>Dropdown Menu inside a Navigation Bar</h3>
<p>Hover over the "Dropdown" link to see the dropdown menu.</p>

关于css - 子导航隐藏在水平菜单中,自动溢出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39015030/

相关文章:

css - Google 字体未在 WordPress 网站中呈现

javascript - 使用菜单大小缩放内容

php - 如何将自定义项添加到特定的 WordPress 菜单项位置

html - 父 div 缩小小于子表的宽度

css - 如何创建一条水平线的 div,其中一些向右流动?所有的 div 应该垂直对齐

javascript - 滚动到一个 Dom 对象位置然后做一些事情

html - 如何将左侧垂直菜单转换为右侧?

css - 如何从中心的 navbar-nav 反转设置 Bootstrap 菜单项?

javascript - css overflow hidden 增加了容器的高度

html - float div中的内容溢出问题