如何实现图片置于div后方,使div滚动覆盖图片效果
需求说明
- 抱歉我表述得不够清晰,无法准确描述需求,但有示例图片展示想要实现的效果。
- 希望学习如何实现如图所示的效果:


- 不完全理解背后的CSS原理,也不知道该搜索什么关键词。曾查找parallax ads相关内容,但未找到相关实现说明。只知道背景图片需要设置比页面其他内容更低的z-index,其余原理完全不懂,恳请提供相关学习资源或指导建议。
实现指导与学习资源
核心CSS原理拆解
- 分层布局(z-index):你提到的
z-index是基础,要把背景元素设为较低层级(比如z-index: -1),确保主体内容在上方。但要注意,z-index仅对定位元素(position: relative/absolute/fixed/sticky)生效,所以背景元素需要设置position: fixed或absolute来固定位置。 - 视差滚动核心:这种效果本质是背景与主体内容滚动速率不同,实现方式分两种:
- 纯CSS:用
background-attachment: fixed让背景固定,主体内容滚动时背景不动,形成视差感;或者用transform: translate3d()配合滚动事件调整位置。 - JS辅助:监听
scroll事件,动态修改背景元素的top或transform属性,控制滚动偏移量,实现更精细的视差效果。
- 纯CSS:用
- 容器裁剪与定位:如果背景只在特定区域显示,需要给父容器设置
overflow: hidden,配合背景元素的position属性控制显示范围。
正确搜索关键词
- 中文:CSS 固定背景视差、CSS 内容悬浮背景滚动、网页分层视差布局
- 英文:CSS fixed background parallax、sticky background scroll effect、layered web parallax
学习资源推荐
- MDN CSS文档:直接搜索
background-attachment、z-index、position相关条目,官方文档是最权威的基础学习资料。 - 实战教程平台:查找“视差滚动布局”相关的实战教程,跟着案例敲代码,重点理解滚动时元素的层级与位移逻辑。
- 开源案例参考:在代码托管平台搜索“parallax background demo”,查看开源的极简实现代码,分析核心CSS属性和JS逻辑。
内容的提问来源于stack exchange,提问作者Sonny
相关产品推荐
相关产品推荐

