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

CSS中无内外边距时父子div边框间出现空白间隙是什么原因?

问题原因

这个间隙是HTML代码里标签之间的换行、缩进生成的空白文本节点导致的。

你写的.parent和.child标签之间有换行和空格,浏览器会把这些连续空白字符解析成一个看不见的空白文本节点。它虽然没有实际内容,但会继承父元素默认的字体大小和行高,本身会占一点高度,把下面的.child往下挤了一段,就出现了你看到的两个边框之间的空白。

额外提一句你可能没注意的点:你给父子都设了width:5rem、box-sizing:border-box,但父元素有3px边框,所以父的内容区实际宽度是5rem - 6px,子元素总宽度刚好是5rem,会比父内容区宽6px,所以子元素会向右、向下各溢出3px,这个是宽高设置的问题,和你问的间隙无关,按需调整子宽高就可以。

修复方法

随便选一种操作就能去掉间隙:

  • 把HTML的换行删掉,写成紧凑写法:<div class="parent"><div class="child"></div></div>
  • 给.parent加font-size: 0样式,让空白文本节点不再占高度

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 04:36:05