【问题标题】:Align 4 div in same row with margin 10px将同一行中的 4 个 div 对齐,边距为 10px
【发布时间】:2019-01-12 03:32:06
【问题描述】:

我有一个父 div 和 4 个子 div。我想在 4 个子元素中提供相等的空间,右边距为 10px,左边距为 10px。当我们提供边距时,div 进入第二行,但我想将 div 保持在一行中,宽度相等,应该使用边距。

div {
  width:100%;
}
div div {
  width: 25%;
  margin-left: 10px;
  margin-right: 10px;
  border: 1px solid #000;
}
<div>
  <div></div>
  <div></div>
  <div></div>
  <div></div>
</div> 
    

【问题讨论】:

  • 即使没有边距或宽度,它们也会进入第二行,因为它们默认是块元素,你至少需要添加 inline-block 或 float

标签: html css


【解决方案1】:

在外层div上添加display: flex;

.container {
  width: 100%;
  display: flex;
}

div div {
  width: 25%;
  margin-left: 10px;
  margin-right: 10px;
  border: 1px solid #000;
}
<div class="container">
  <div></div>
  <div></div>
  <div></div>
  <div></div>
</div>

没有弹性盒的解决方案

.container {
  width: 100%;
  font-size: 0;
}

div div {
  box-sizing: border-box;
  width: calc(25% - 20px);
  display: inline-block;
  margin-left: 10px;
  margin-right: 10px;
  border: 1px solid #000;
  font-size: 16px;
}
<div class="container">
  <div></div>
  <div></div>
  <div></div>
  <div></div>
</div>

【讨论】:

  • 嗨,Nandita,如果没有“flex”,是否可以保持在同一行?
  • 很好:) 答案
猜你喜欢
  • 2010-12-18
  • 1970-01-01
  • 2021-12-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-03
  • 1970-01-01
相关资源
最近更新 更多