html - Flexbox 等于八个 50% 宽度的列显示不正确

标签 html css flexbox

<分区>

我正在尝试使用 Flexbox 使 50% 宽度的列具有相同的高度。我有这个....

.items {
      display: flex;
      flex-wrap: wrap;
}

.item {
  padding: 10px;
  width:50%;
        margin: 10px;
        background: aqua;
             
}
<div class="items">
  <div class="item">llamcorper id vehicula quis, sollicitudin a nibh. Quisque sed bibendum ipsum, et tempor arcu. Duis ultrices feugiat purus, ut sollicitudin ipsum interdum a. Nam porta vestibulum elit, et feugiat eros viverra et. In hac habitasse platea dictumst. Nullam at tempus libero. Donec pretium risus sit amet lacus imperdiet, vitae lacinia lorem eleifend. Mauris faucibus, dolor vel facilisis ultrices, massa urna tempus urna, vitae euismod felis est nd
  </div>
  <div class="item">
    Item 1sadasdasdasdasd
  </div>
  <div class="item">
    Item 1satricies fermentum erat luctus placerat. Praesent cursus nisl vitae magna tristique lacinia ac ac justo. Nunc euismod, est sed sodales lacinia, nisi leo luctus nulla, id commodo lectus sem vel erat. Vivamus id quam id ligula condimentum fermentum. Nullam commodo, magna sit amet sdasd
  </div>
  <div class="item">
    Item 1sadasdasdasdasd
  </div>
</div>

它只是显示在一列中,我做错了什么?

最佳答案

因为您使用了 paddingmargin ,元素的宽度等于 50% + paddings + margins,

作为解决方法,您可以设置一个安全的 min-width 并设置 flex-grow: 1;

可以重置框大小以在最小宽度计算中包括填充。

.items {
  display: flex;
  flex-wrap: wrap;
}

.item {
  min-width: 40%;
  padding: 10px;
  flex: 1;
  margin: 10px;
  background: aqua;
}
<div class="items">
  <div class="item">llamcorper id vehicula quis, sollicitudin a nibh. Quisque sed bibendum ipsum, et tempor arcu. Duis ultrices feugiat purus, ut sollicitudin ipsum interdum a. Nam porta vestibulum elit, et feugiat eros viverra et. In hac habitasse platea dictumst. Nullam
    at tempus libero. Donec pretium risus sit amet lacus imperdiet, vitae lacinia lorem eleifend. Mauris faucibus, dolor vel facilisis ultrices, massa urna tempus urna, vitae euismod felis est nd
  </div>
  <div class="item">
    Item 1sadasdasdasdasd
  </div>
  <div class="item">
    Item 1satricies fermentum erat luctus placerat. Praesent cursus nisl vitae magna tristique lacinia ac ac justo. Nunc euismod, est sed sodales lacinia, nisi leo luctus nulla, id commodo lectus sem vel erat. Vivamus id quam id ligula condimentum fermentum.
    Nullam commodo, magna sit amet sdasd
  </div>
  <div class="item">
    Item 1sadasdasdasdasd
  </div>
</div>

关于html - Flexbox 等于八个 50% 宽度的列显示不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46017789/

上一篇:html - 什么默认 CSS 阻止我完全重叠具有相对定位的两个元素?

下一篇:javascript - 如何使用 Greasemonkey 更改 CSS 样式?

相关文章:

html - 如何设置 html 页面布局对媒体类型的依赖?

html - 如何为调整窗口大小设置固定的最小宽度大小?

html - 使用 CSS 部分重叠元素

html - 如何使用 Flexbox 使描述列表成对对齐

html - 难以在页眉/页脚之间插入背景图像

html - 如何在不同的屏幕上保持网站的结构?

javascript - 数字 : any way to determine the locale?

javascript - 背景图片显示

css - 使用 flex-wrap 的 flex box 没有达到全高

html - Flexbox - 所有卡片的高度相同