【发布时间】:2023-03-13 03:35:02
【问题描述】:
我有两个内联显示的自动宽度弹性框列。我希望列中有动态内容,因此我试图找出一种方法来仅包装包含菜单项的第一列。
我知道我可以使用“d-flex”div 上的“flex-wrap”类来包装它们,但我只想包装第一个自动宽度列,同时保持两列彼此内联。
我正在使用 Bootstrap 4 CSS,它已经包含我正在使用的 flexbox 类,请参阅我提供的小提琴示例。
https://jsfiddle.net/j9v70qvy/
<div id="header-middle">
<div class="container">
<div class="row align-items-center">
<div class="header-middle-mobile-menu-outer col col-auto hidden-md-up">
<a class="header-middle-mobile-menu-toggle">
<i class="fa fa-bars"></i>
</a>
</div>
<div class="logo-outer col col-auto">
<div class="logo-image">
<a href="#">
<img src="https://www.google.com/url?sa=i&rct=j&q=&esrc=s&source=images&cd=&cad=rja&uact=8&ved=0ahUKEwiamcGxuM3VAhUTwWMKHVWaBgMQjRwIBw&url=http%3A%2F%2Fwww.freepik.com%2Ffree-vector%2Flogo-sample-text_701628.htm&psig=AFQjCNEHXsgvhjDI__g4Vk4GETXnCeRu6A&ust=1502481095339508">
</a>
</div>
</div>
<div class="d-flex col pl-0 pr-0 align-items-center justify-content-end justify-content-md-start">
<div class="flex-wrap header-middle-menu-outer col col-auto hidden-sm-down">
<nav class="header-middle-menu">
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Portfolio</a></li>
<li><a href="#">Blog</a></li>
<li><a href="#">Sample Page</a></li>
<li><a href="#">Terms and Conditions</a></li>
<li><a href="#">Privacy Policy</a></li>
</ul>
</nav>
</div>
<div class="header-middle-social-media-icons-outer col col-auto">
<nav class="header-middle-social-media-icons text-center icons-circle icons-sm">
<ul class="social-media-icons">
<li><a href="#" target="_blank"><i class="fa fa-facebook"></i></a></li>
<li><a href="#" target="_blank"><i class="fa fa-twitter"></i></a></li>
<li><a href="#" target="_blank"><i class="fa fa-instagram"></i></a></li>
<li><a href="#" target="_blank"><i class="fa fa-youtube"></i></a></li>
<li><a href="#" target="_blank"><i class="fa fa-envelope"></i></a></li>
</ul>
</nav>
</div>
</div>
</div>
</div>
【问题讨论】:
-
对你想要的输出有点困惑,尤其是当我调整大小时,社交媒体图标在那个小提琴中消失了。但是,如果你给社交媒体包装器一个固定的宽度并将其
flex-grow和flex-shrink设置为0,它只会停留在这个宽度上,并且左侧会根据需要扩展和收缩以及换行。这行得通,还是您正在寻找不同的东西? (如果您需要其他内容,请编辑问题以澄清。) -
它们必须保持自动宽度列,因为它们将在给定时间添加或删除动态内容。第一个自动宽度列应该换行,但第二个不应该。想知道这在 flexbox 中是否可行。我添加了一个示例图像来显示所需的结果。
-
你可以尝试在适当的地方使用
white-space: nowrap。您希望以什么宽度在帖子中看到图片中的内容? -
没有需要缩小的确切宽度,这一切都基于“d-flex”的容器,所以如果屏幕尺寸太小而无法容纳其中的两列容器然后我需要第一列像我提供的图像一样包装。