【发布时间】:2019-07-19 17:01:32
【问题描述】:
基本上,我正在尝试使用 Flexbox 将我的汉堡菜单 div 移动到页面的右侧,但它拒绝让步。我试过 flex-start/flex-end 的东西,我试过 margin-right/left auto,但它似乎不起作用。
唯一使它起作用的是如果我设置了一个固定的左边距,但是当屏幕尺寸缩小时,它基本上会将徽标推离屏幕。
我的代码有什么问题?
/*Parent Element*/
#nav-bar {
display: flex;
justify-content: space-between;
padding-top: 1rem;
}
/*Children*/
#logo {
flex: 2;
justify-self: flex-start;
max-width: 6em;
margin-right: auto;
}
#mobile-nav {
flex: 1;
justify-self: flex-end;
margin-left: auto;
}
<div id="nav-bar">
<div id="logo"><img src="./img/logo.png" alt=""> </div>
<div id="mobile-nav">
<div></div>
<div></div>
<div></div>
</div>
<ul id="main-nav">
<li>Item1</li>
<li>Item2</li>
<li>Item3</li>
<li>Item4</li>
<li><a href="''" class="btn">CTA</a></li>
</ul>
</div>
【问题讨论】:
-
从 logo 和 mobile-nav 中删除 flex、justify-self 和 margin-right/left 属性应该在理想情况下工作,除非它们中的任何一个都暗示了另一个 css。
-
嘿@3Demon 删除你建议的那些项目有效!当解决方案如此简单时,我不敢相信我花了一整天的时间来解决这个问题!