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

如何将一个DIV放置在另一个DIV下层?烟花效果置于中心文字下层求助

解决方案

实现烟花层放在文字下层的核心是通过z-index控制元素层叠顺序,只需要修改几处CSS代码即可,同时你提供的HTML有冗余闭合标签可以顺便清理:

需要调整的CSS代码:

/* 给父容器加定位,作为子元素的定位参照 */
.centro {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: center;
  margin: 100px 0;
  position: relative; /* 新增这行 */
}

/* 给文字层加层级,确保在最上层 */
.text {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative; /* 新增这行 */
  z-index: 10; /* 新增这行,层级比烟花高即可 */
}

/* 调整烟花层定位和层级 */
.firework {
  display: flex;
  justify-content: center;
  position: absolute; /* 新增这行 */
  left: 50%; /* 新增这行,对齐父容器中心 */
  top: 50%; /* 新增这行,对齐父容器中心 */
  z-index: 1; /* 新增这行,层级低于文字层 */
}

/* 原来的transform合并为一行,避免属性覆盖 */
#firework1 {
  transform: scale(1) translateX(-60px) translateY(-150px);
}

修正后的HTML代码(删除冗余的两个</div>):

<body>
  <div class="centro">
    <div class="text">
      <div class="center-text">
        compleanno di <span class="typing center-text"></span>
      </div>
    </div>

    <div class="firework" id="firework1">
      <div class="explosion"></div>
      <div class="explosion"></div>
      <div class="explosion"></div>
      <div class="explosion"></div>
      <div class="explosion"></div>
      <div class="explosion"></div>
      <div class="explosion"></div>
      <div class="explosion"></div>
      <div class="explosion"></div>
      <div class="explosion"></div>
      <div class="explosion"></div>
      <div class="explosion"></div>
    </div>
  </div>
</body>

注意:z-index属性只对设置了非static定位(relative/absolute/fixed/sticky)的元素生效,这是新手控制层级时最容易忽略的点。调整后烟花就会显示在文字下方,不会遮挡中心的邀请文案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 06:27:02