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

React项目中div背景图片无法在子元素后方显示的问题

问题解决:子元素后方不显示父元素背景图

你的问题核心出在.firstContainer的z-index: -1属性上:

  • 父元素.start默认是position: static,此时子元素设置z-index: -1会让它的层级低于父元素,导致子容器被挤到父元素下层,显示的是body的白色背景,而非父元素的背景图。
  • 另外.start里重复设置了background-size,后者会覆盖前者,建议统一配置。

修改后的CSS代码:

.start {
    height: 100vh;
    background-image: url("../../public/main2.jpg");
    background-size: cover; /* 保留一个即可,cover会让图片完整覆盖容器且不变形 */
    background-repeat: no-repeat;
}

.firstContainer {
    padding-left: 50px;
    width: 50vw;
    /* 移除z-index: -1 */
    color: white; /* 可选:若背景图偏深,设置文字为白色提升可读性 */
}

.subheading-div1 {
    font-size: 1.7rem;
    margin: 0px;
}

.home-heading {
    font-size: 3rem;
    margin: 20px;
    margin-bottom: 0px;
}

.greenText {
    color: #79ca5d;
}

.desc-div1 {
    font-size: 1.4rem;
    font-weight: 700;
    margin-top: 20px;
}

.btn-div {
    background-color: transparent;
    display: inline-block;
    width: 68.46px;
    height: 51.86px;
    border-radius: 5px;
    margin: 20px 20px 0 0;
    border: 1px solid #79ca5d;
}

.btn-div:hover {
    background-color: #79ca5d;
}

.btn {
    color: #fff;
    padding-right: 20px;
    width: 45px;
    height: 45px;
    padding-left: 10px;
    padding-top: 5px;
}

补充说明:

  • 若修改后背景图路径失效,React项目中public文件夹的资源可直接用根路径引用,比如url("/main2.jpg"),无需相对路径。
  • 移除z-index: -1后,子元素会回到父元素的正常层级,父元素的背景图就能在子元素后方正常显示。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 23:45:33