CSS 定位布局模块将粘性定位定义为一种方法,其中相对于最近的祖先计算框的偏移量带有“滚动框”或视口。然而,滚动框的确切性质引发了一些混乱。
滚动框本质上是一个溢出属性设置为可见以外的值的框。例如,将溢出设置为隐藏,会创建一个具有可滚动内容的框。
在粘性定位的上下文中,距离粘性元素最近的滚动框起着至关重要的作用。如果粘性元素的祖先将其溢出设置为滚动值,则将相对于该滚动框计算粘性元素的偏移量。
控制是否一个盒子变成了一个滚动盒子,需要相应地设置溢出属性。将“overflow”设置为“visible”可防止创建滚动框,而将其设置为“auto”、“scroll”或“hidden”则会创建一个滚动框。
考虑以下示例:
.wrapper { height: 200vh; border: 2px solid; } .wrapper > div { position: sticky; top: 0; height: 20px; background: red; }
<div class="wrapper"> <div></div> </div>
此代码创建一个高容器(包装器)和一个粘性元素(div)在其中。包装器具有溢出:隐藏,使其成为滚动框。当用户滚动页面时,粘性元素将粘在视口的顶部,直到到达包装器的顶部。此时,粘性元素将停止滚动,因为它已到达最近的滚动框(包装器)的顶部。
以上是滚动框如何影响 CSS 中的粘性定位?的详细内容。更多信息请关注PHP中文网其他相关文章!