为什么 CSS sticky 定位可以在“.app-container”内部的“.sticky-box”生效?

为什么 CSS sticky 定位可以在“.app-container”内部的“.sticky-box”生效?

求大佬帮忙解析一段 css sticky 定位代码

问题:

在给定 HTML CSS 代码中,".sticky-box" 类应用了 sticky 定位,但它位于 ".app-container" 内。按理说,sticky 定位只能对 ".app-container" 的直系子元素生效(即 ".info" 和 ".main")。然而,为什么上述 CSS 代码能让 ".sticky-box" 实现 sticky 定位?

答案:

sticky 定位生效在它最近的有滚动机制的祖先元素上。

虽然 ".app-container" 没有明确的滚动条,但由于其拥有 "overflow: auto" 样式,它成为了最近的有滚动机制的祖先元素。因此,".sticky-box" 的 sticky 定位相对于 ".app-container" 触发。

以上就是为什么 CSS sticky 定位可以在“.app-container”内部的“.sticky-box”生效?的详细内容,更多请关注其它相关文章!