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

如何使用CSS与Flexbox实现子HTML元素垂直水平铺满父容器

核心原因
  • 包裹#child3的父元素li设置了display: flex + align-items: center,默认会让子元素高度收缩到内容高度,无法自动占满父容器高度
  • #child3本身是行内元素,默认宽高仅适配自身内容,不会主动填充父容器空间
  • 父元素li默认设置了左右padding,如果需要连内边距区域也覆盖,需要额外处理该属性
最终修改方案

首先替换你代码里的#child3样式:

#child3 {
  /* 行内元素转块级,支持宽高设置 */
  display: block;
  /* 宽高100%填充父容器可用空间 */
  width: 100%;
  height: 100%;
  /* 保持内部close图标居中显示,不需要可以删除 */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  /* 清除默认行高带来的尺寸偏移 */
  line-height: 1;
}

如果需要#child3完全铺满整个li(包含li原本的左右内边距区域),额外修改最后一个li的样式即可:

#container nav ul li:last-child {
  margin-left: auto;
  /* 调整对齐规则,允许子元素高度拉伸占满 */
  align-items: stretch;
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 11:54:02