首页 > 文章列表 > 为什么在body上使用flex布局时,子元素无法垂直居中?

为什么在body上使用flex布局时,子元素无法垂直居中?

460 2025-04-23

为什么在body上使用flex布局时,子元素无法垂直居中?

flex容器无法让item上下左右居中

在flex布局中,我们可以使用 align-items 和 justify-content 属性来控制item的垂直和水平对齐方式,从而实现item的居中。

根据提供的代码,我们可以看到 div.outer 在设置了flex属性后,已经实现了item (div.inner) 的上下左右居中。但是,当我们将flex属性应用到 body 上时,div.outer 并没有实现垂直居中。这是因为:

  1. body 标签本身没有固定的高度,而是由内部内容撑起来的。当没有内容时,body 的高度为0,导致item无法垂直居中。
  2. body 是文档的根元素,因此在浏览器中表现为全屏,无法通过设置 height 来控制其大小。
来源:1730585699