You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让两个div并排且各占100%屏幕宽度?inline-block方案无效

问题分析与解决方案

嘿,我一眼就瞅出问题所在啦——你给两个div都设置了width: 100%,哪怕用了inline-block,每个元素都会占满父容器的整个宽度,自然没法实现并排效果啦😎

下面给你几种靠谱的解决办法,按需选用:

方法1:调整inline-block的宽度并处理空白间隙

既然要并排,就得给每个div分配合适的宽度(加起来不能超过父容器宽度),另外还要注意inline-block元素之间默认会有空白间隙,得一起处理:

/* 父容器处理空白间隙 */
.parent {
  font-size: 0; /* 消除inline-block元素间的空白 */
}

.A, .B {
  display: inline-block;
  width: 50%; /* 各占一半宽度 */
  font-size: 16px; /* 恢复子元素的字体大小 */
  box-sizing: border-box; /* 避免padding/border撑大宽度 */
}
<div class="parent">
  <div class="A">我是A</div>
  <div class="B">我是B</div>
</div>

方法2:用Flexbox(推荐,现代布局首选)

Flexbox是现在最常用的布局方案,代码简洁还没inline-block的空白问题:

.parent {
  display: flex; /* 父容器设为flex容器 */
}

.A, .B {
  flex: 1; /* 两个元素平分父容器宽度 */
  /* 也可以设固定宽度,比如width: 200px; */
}
<div class="parent">
  <div class="A">我是A</div>
  <div class="B">我是B</div>
</div>

方法3:用Grid布局(适合更复杂的网格场景)

如果需要更规整的网格布局,Grid也是很棒的选择:

.parent {
  display: grid;
  grid-template-columns: 1fr 1fr; /* 两列各占1份宽度 */
  /* 也可以设固定列宽,比如grid-template-columns: 200px 200px; */
}
<div class="parent">
  <div class="A">我是A</div>
  <div class="B">我是B</div>
</div>

总结一下:如果只是简单的并排,Flexbox是最省心的选择;如果是复杂的多列布局,Grid会更顺手。

内容的提问来源于stack exchange,提问作者Vishal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 06:58:10