CSS - flex 网格布局

标签 css html flexbox

我有一个使用 flex 的简单网格。

我需要三列和每个 block 之间的边距,但不是每行的最后一个 block 。

这在这里工作,但我还需要所有 block 都是容器的 100%,所以我不希望在第 3 个 block 之后有边距。

是否可以有一个像这样的网格,其中 block 是百分比和内部边距而不是容器。

.block {
  border: 1px solid red;
  display: flex;
  flex-wrap: wrap;
  max-width: 900px;
  justify-content: flex-start;

}

.block__item {
  background: grey;
  height: 20px;
  margin-bottom: 2px;
  width: calc(33.33% - 2px);
  margin-right:2px;  
}
<div class="block">
  <div class="block__item"></div>
  <div class="block__item"></div>
  <div class="block__item"></div>
  <div class="block__item"></div>
  <div class="block__item"></div>
</div>

最佳答案

.block {
  border: 1px solid red;
  display: flex;
  flex-wrap: wrap;
  max-width: 900px;
  justify-content: flex-start;

}

.block__item {
  background: grey;
  height: 20px;
  border-bottom: 2px solid white;
  border-right: 2px solid white;
  flex-grow: 1;
  flex-shrink: 0;
}

.block__item:last-of-type {
  border-right: none; 
}
<div class="block">
  <div class="block__item"></div>
  <div class="block__item"></div>
  <div class="block__item"></div>
  <div class="block__item"></div>
  <div class="block__item"></div>
  <div class="block__item"></div>
</div>
<div class="block">
  <div class="block__item"></div>
  <div class="block__item"></div>
</div>
<div class="block">
  <div class="block__item"></div>
</div>

关于CSS - flex 网格布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54205756/

相关文章:

css - 文本对齐的非左值的 CSS 中的文本溢出行为

html - 我有一些 ul li 高度问题

javascript - 添加 PHP 时 CSS 模板下拉菜单中断

javascript - 在 "mouseenter"上显示 div 并在 "click"上移除内部 div

html - 为什么在没有数据传输时 EventSource 连接每 30-60 秒关闭一次,而 WebSocket 的连接保持打开状态?

html - CSS:如何跨两列定位图像,并带有换行文字? (内含 img 供引用)

html - 使用 Flex 尝试根据图像获取框

css - 如何在不使用绝对位置的情况下将div对齐到右下角?

html - 表格上的 Flexbox 在 Firefox 中不起作用

javascript - 更改 css 链接并等待新的 css 加载