跳转到内容
主菜单
主菜单
移至侧栏
隐藏
导航
首页
最近更改
随机页面
MediaWiki帮助
代码酷
搜索
搜索
中文(中国大陆)
外观
创建账号
登录
个人工具
创建账号
登录
未登录编辑者的页面
了解详情
贡献
讨论
编辑“︁
CSS背景附着(background-attachment)
”︁(章节)
页面
讨论
大陆简体
阅读
编辑
编辑源代码
查看历史
工具
工具
移至侧栏
隐藏
操作
阅读
编辑
编辑源代码
查看历史
常规
链入页面
相关更改
特殊页面
页面信息
外观
移至侧栏
隐藏
您的更改会在有权核准的用户核准后向读者展示。
警告:
您没有登录。如果您进行任何编辑,您的IP地址会公开展示。如果您
登录
或
创建账号
,您的编辑会以您的用户名署名,此外还有其他益处。
反垃圾检查。
不要
加入这个!
= CSS背景附着(background-attachment) = '''CSS背景附着'''是CSS中控制背景图像滚动行为的属性,决定背景图像是相对于视口固定还是随内容滚动。该属性在创建视差滚动效果或固定背景时特别有用。 == 属性值 == <code>background-attachment</code> 接受以下值: * <code>scroll</code>(默认值):背景图像随元素内容滚动。 * <code>fixed</code>:背景图像相对于视口固定,不随内容滚动。 * <code>local</code>:背景图像随元素内容滚动(包括元素内部滚动)。 == 语法 == <syntaxhighlight lang="css"> selector { background-attachment: scroll | fixed | local; } </syntaxhighlight> == 详细说明 == === 1. scroll === 默认值。背景图像会随元素的内容一起滚动。如果元素有滚动条,背景图像不会随元素内部的滚动而移动。 '''示例:''' <syntaxhighlight lang="css"> .box { background-image: url("image.jpg"); background-attachment: scroll; height: 200px; overflow: auto; } </syntaxhighlight> '''效果:''' * 当页面滚动时,背景图像随元素移动。 * 如果元素内部有滚动条,滚动元素内容时背景图像保持固定。 === 2. fixed === 背景图像相对于视口固定,即使页面或元素滚动,背景图像也不会移动。 '''示例:''' <syntaxhighlight lang="css"> body { background-image: url("image.jpg"); background-attachment: fixed; } </syntaxhighlight> '''效果:''' * 页面滚动时,背景图像保持固定。 * 常用于创建全屏固定背景效果。 === 3. local === 背景图像随元素内容滚动。如果元素有滚动条,背景图像会随元素内部的滚动而移动。 '''示例:''' <syntaxhighlight lang="css"> .box { background-image: url("image.jpg"); background-attachment: local; height: 200px; overflow: auto; } </syntaxhighlight> '''效果:''' * 当元素内容滚动时,背景图像也会随之滚动。 * 适用于需要背景图像与内容同步滚动的场景。 == 对比示例 == 以下示例展示三种值的区别: <syntaxhighlight lang="html"> <div class="container"> <div class="box scroll">scroll</div> <div class="box fixed">fixed</div> <div class="box local">local</div> </div> </syntaxhighlight> <syntaxhighlight lang="css"> .container { height: 300px; overflow: auto; } .box { height: 600px; background-image: url("image.jpg"); margin-bottom: 20px; } .scroll { background-attachment: scroll; } .fixed { background-attachment: fixed; } .local { background-attachment: local; } </syntaxhighlight> '''观察结果:''' * <code>scroll</code>:背景图像随容器滚动,但容器内部滚动时背景不动。 * <code>fixed</code>:背景图像始终固定。 * <code>local</code>:背景图像随容器及内部内容滚动。 == 实际应用案例 == === 1. 视差滚动效果 === 通过结合<code>fixed</code>和<code>scroll</code>,可以创建视差滚动效果: <syntaxhighlight lang="css"> .parallax { background-image: url("background.jpg"); background-attachment: fixed; background-position: center; background-repeat: no-repeat; background-size: cover; height: 100vh; } .content { background-attachment: scroll; } </syntaxhighlight> === 2. 固定背景的登录页面 === 固定背景图像增强视觉体验: <syntaxhighlight lang="css"> body { background-image: url("login-bg.jpg"); background-attachment: fixed; background-size: cover; } </syntaxhighlight> == 注意事项 == * <code>fixed</code>在移动设备上可能表现不一致,需测试兼容性。 * 背景图像较大时,<code>fixed</code>可能导致性能问题。 * <code>local</code>对老旧浏览器支持有限。 == 总结 == {| |- | '''值''' || '''行为''' |- | <code>scroll</code> || 背景随元素滚动,内部滚动时固定 |- | <code>fixed</code> || 背景相对于视口固定 |- | <code>local</code> || 背景随元素及内部内容滚动 |} 通过合理使用<code>background-attachment</code>,可以创建丰富的视觉效果,提升用户体验。 [[Category:编程语言]] [[Category:CSS]] [[Category:CSS颜色与背景]]
摘要:
请注意,所有对代码酷的贡献均被视为依照知识共享署名-非商业性使用-相同方式共享发表(详情请见
代码酷:著作权
)。如果您不希望您的文字作品被随意编辑和分发传播,请不要在此提交。
您同时也向我们承诺,您提交的内容为您自己所创作,或是复制自公共领域或类似自由来源。
未经许可,请勿提交受著作权保护的作品!
取消
编辑帮助
(在新窗口中打开)