【发布时间】:2021-03-29 18:41:24
【问题描述】:
如何防止父容器的position:fixed 破坏其justify-content 属性?
我正在尝试使用 flexbox 创建一个固定的菜单栏。
示例 https://codepen.io/dnguyencode/pen/XWjgxKG
<style>
*{
border: 1px black solid;
}
.nav{
display: flex;
justify-content: space-between;
// position: fixed;
height: 100px;
}
</style>
<div class="nav">
<div class="nav__logo">
<img src="https://s3.amazonaws.com/freecodecamp/original_trombones.png" alt="" id="header-img">
</div>
<div class="nav__linkList">
<nav id="nav-bar">
<a href="#sect1" class="nav-link">Click Me</a>
<a href="#sect2" class="nav-link">Click Me</a>
<a href="#sect3" class="nav-link">Click Me</a>
</nav>
</div>
</div>
【问题讨论】:
-
我不确定导航应该是什么样子,但是如果您从 .nav 中删除 flexbox 并设置为子类 .nav__linkList,那么 flexbox 将适用于所有属性。
-
你需要给
nav指定一个宽度 -
@Paulie_D 当我指定导航栏的宽度时,它会导致剪辑。你可以在这里看到它:codepen.io/dnguyencode/pen/XWjgxKG
-
@lortschi 这不是我想要的。导航标签包含徽标图像和导航栏链接,一端带有徽标,另一端带有链接。我希望这两个元素都得到修复。
-
移除 justify-content: space-between;在 .nav 上并在 .nav__logo 上设置 margin-right: 'your-px-amount'。然后您可以设置徽标和导航之间的确切距离。然后剪裁不再可见。
标签: html css flexbox css-selectors