CSS:下拉菜单中的相对位置会影响父级

标签 css drop-down-menu

我有一个包含 ul 子级的 li 父级。两者都需要定位为相对。

问题是 ul 子元素的宽度改变了 li 父元素的宽度。

这是我的代码:

HTML

<li class="nav open">
<ul class="dropdown-menu " role="menu">
    <li id="t-smwbrowselink"><a href="/mediawiki/index.php/Special:Browse/Main_Page" rel="smw-browse" tabindex="-1">Browse properties</a></li>
    ....
</ul>

CSS

li.nav.open {
    position: relative;
    overflow: auto;
    display:  inline-block;
}

ul.dropdown-menu {
    position: relative;
}

我添加了结果的图像。 Image .如果父 ul 都处于相对位置,我怎样才能使父 ul 独立于子?

最佳答案

我假设您正在使用 BootStrap?如您所知,子菜单/下拉菜单 ul 是开箱即用的 position: absolute

您可以将 max-width 添加到有问题的 li - 这是一个 fiddle :https://jsfiddle.net/xu7u8prn/

li.dropdown.open {
  position: relative;
  max-width: 100px;
}
ul.dropdown-menu {
  position: relative;
}

请注意,我已经为示例获取了 BootStrap 默认导航代码。

您需要对适合您的情况的具体方法进行实验...

关于CSS:下拉菜单中的相对位置会影响父级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37704824/

相关文章:

jquery - Quickbase 日历报告 - 彩色条

具有单选外观和感觉的 HTML <select> 多个

jquery - CSS 或 jQuery : text in two different colors in <select> dropdown menu

c# - 修改我的串联查询 C#

javascript - knockout.js css 绑定(bind) - 如何添加焦点等元素状态?

html - CSS直接后裔(>)在选择性方面没有任何值(value)吗?

html - 带有箭头和完整背景色悬停的 CSS 选项卡

css - webkit 不会转换

javascript - 下拉菜单未填充(有 Angular )

html - 自定义 Bootstrap 的汉堡菜单