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

如何设置背景图覆盖整个页面且滚动时不重复显示

CSS背景图重复问题修复方案

问题根因

  • background-repeat默认值为repeat,背景图尺寸小于容器时会自动横向、纵向平铺
  • 原有background-size: 100% auto仅适配宽度,高度按原图比例自适应,当页面内容高度超过视口高度时,.App容器实际高度会大于100vh,背景图高度小于容器高度就会触发重复填充

修复后完整代码

.App {
  text-align: center;  
  background-image: url('./colorful-bg.png');  
  /* 禁止背景重复 */
  background-repeat: no-repeat;
  /* 背景等比例缩放完全覆盖整个容器,无空白区域,超出部分自动裁剪 */
  background-size: cover;
  /* 背景居中对齐,避免内容偏移时背景显示不全 */
  background-position: center center;
  /* 可选配置:背景固定在视口,页面滚动时背景不跟随移动 */
  /* background-attachment: fixed; */
  min-height: 100vh;  
}

可选调整说明

  • 如果不需要保持背景图比例,希望背景完全贴合容器宽高,可以将background-size改为100% 100%,该配置可能导致背景图拉伸变形
  • 如果希望滚动页面时背景固定不跟随内容移动,取消background-attachment: fixed的注释即可

内容的提问来源于stack exchange,提问作者Qatr El-Nada

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 16:54:04