【问题标题】:Image dissapears when I use flexbox使用 flexbox 时图像消失
【发布时间】:2021-07-08 04:04:28
【问题描述】:

我正在尝试构建此导航栏并使其也具有响应性,但问题是当我应用 display: flex; 时,徽标就会消失。出于某种原因,当我使用固定宽度时,图像会保留,但是当我使用百分比时,图像就会消失。我想使用百分比来保持导航栏的响应能力。

这是我目前所拥有的。

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

header {
  display: flex;
  border: 10px solid orange;
  justify-content: space-around;
  width: 100%;
}

header div#company-logo img#header-img {
  width: 50%;
}
<header id="header">
  <div id="company-logo">
    <img src="https://via.placeholder.com/100x50.jpg" alt="hamburguer logo" id="header-img">
  </div>
  <nav id="nav-bar">
    <ul>
      <li class="nav-link"><a href="http://">Home</a></li>
      <li class="nav-link"><a href="http://">Info</a></li>
      <li class="nav-link"><a href="http://">Contact Us</a></li>
    </ul>
  </nav>
</header>

就像我之前说的,我尝试过使用固定百分比,例如 px 或 vw。我只是想了解为什么使用百分比时图像会消失。

【问题讨论】:

标签: css svg flexbox responsive-design


【解决方案1】:
#company-logo {
  flex: 0 0 auto;
}

...应该这样做。意思是:

flex-grow: 0;
flex-shrink: 0;
flex-basis: auto;

重要的位是flex-shrink: 0; flex-basis: auto;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-08
    • 2013-05-19
    相关资源
    最近更新 更多