【发布时间】:2019-01-11 23:50:15
【问题描述】:
问题
我的页面顶部有一个简单的全角标头,带有非固定背景图片(即background-attachment: scroll)和一些标题文本。一切看起来都很好,但是当用户向上“过度滚动”时,“溢出”是白色的。为了解决这个问题,我想在用户这样做时固定背景的位置,以便内容向下移动但背景保持不变。
示例代码
index.html
<div class="masthead">
</div class="container">
<h1>Hello, World</h1>
<p>Lorem ipsum dolor</p>
</div>
</div>
main.scss
/*...*/
.masthead {
display: block;
text-align: center;
color: white;
background-image: url('http://via.placeholder.com/1900x1250/ff6666/000000');
background-repeat: no-repeat;
background-attachment: scroll;
background-position: center center;
background-size: cover;
}
/*...*/
为什么overscroll-behavior-y: none 不行
首先,Safari/WebKit 尚不支持此功能,但我也认为这有点激进。我非常喜欢过度滚动的感觉,我想保留这种感觉,同时保持 UI 看起来干净。
怪癖
当我自己尝试执行此操作时,我发现添加 background-attachment: fixed 属性会稍微移动图像的位置。此外,即使背景是固定的,标头也不会延伸到溢出中,因此它的背景仍然是白色的。
我正在使用
SCSSjQuerybootstrap
【问题讨论】:
-
感谢您提出的精心设计的问题。您介意添加一点代码,以便我们查看您的文档和 SCSS 的结构吗?
-
@Queder 谢谢,刚刚更新。
标签: javascript jquery css twitter-bootstrap sass