html - 有没有办法创建没有绝对位置的水平子导航?

标签 html css

我有一个水平导航和一个水平子导航。我试图让子导航换行并放到一个新行,同时将其下方的内容向下推。我遇到了麻烦,因为子导航是绝对的。

有没有办法在不绝对定位的情况下创建水平导航?

这是我目前拥有的 fiddle :http://jsfiddle.net/eqqqmra7/

CSS

ul {
    text-align: justify;
}
ul:after {
    content:'';
    display: inline-block;
    width: 100%;
}
ul li {
    display: inline-block;
}
ul li ul {
    position: absolute; /* Trying to take this out so it pushes content down */
}

HTML

<nav>
    <ul>
        <li>
            <a href="#">Link</a>
            <ul>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
                <li><a href="#">Sub Link</a></li>
            </ul>
        </li>
        <li><a href="#">Link</a></li>
        <li><a href="#">Link</a></li>
        <li><a href="#">Link</a></li>
        <li><a href="#">Link</a></li>
    </ul>
</nav>
<p>Haiiiii, I should push down if the nav wraps.</p>

示例和代码是完整导航的精简版本。

最佳答案

我将子导航的位置更改为从父级继承。

结果在这里:http://jsfiddle.net/eqqqmra7/1/

这就是您要找的吗?

CSS

ul {
    text-align: justify;
}
ul:after {
    content:'';
    display: inline-block;
    width: 100%;
}
ul li {
    display: inline-block;
}
ul li ul {
    position: inherit;
}

关于html - 有没有办法创建没有绝对位置的水平子导航?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33876323/

相关文章:

html - 背景图像在 IE7 中显示不正确

javascript - 在 css 中为移动 View 调整/禁用 jQuery 代码

html - 照片无法加载且链接已失效

javascript - 计算 div 内的输入并向每个 jquery 添加 +1

javascript - 如何调试 MSSQL 中的资源 #6 错误?

javascript - 如何将按钮高度设置为视口(viewport)高度

javascript - 如何通过拖放重新排序 4 个 div(使用 angular2/4)?

html - 是否可以在高度固定但宽度可变的 div 中使用文本溢出?

javascript - 向上滚动后如何修复标题下方的div?

javascript - 通过使用事件监听器而不是内联 onclick 或 jquery 更改带有按钮的 div 的颜色