小编给大家分享一下css如何设置粘性定位,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!
css设置粘性定位的方法:直接在css的选择器中写【position:sticky】就可以了。粘性定位可以被认为是相对定位和固定定位的混合,元素在跨越特定阈值前为相对定位,之后为固定定位。
具体方法:
在css的选择器里面直接写position:sticky就可以了。
粘性定位可以被认为是相对定位和固定定位的混合。元素在跨越特定阈值前为相对定位,之后为固定定位。这个特定阈值指的是 top, right, bottom 或 left 之一,换言之,指定 top, right, bottom 或 left 四个阈值其中之一,才可使粘性定位生效。否则其行为与相对定位相同。
粘性定位中有一个“流盒”(flow box)的概念,指的是粘性定位元素最近的可滚动元素(overflow 属性值不是 visible 的元素)的尺寸盒子,如果没有可滚动元素,则表示浏览器视窗盒子。
在css的选择器里面直接写position:sticky就可以了,不再举例,主要是强调以下几点:
1、粘性元素的位置只相对于第一个有滚动的父级块元素定位(scrolling mechanism,通过 overflow 设置为overflow/scroll/auto/overlay 的元素),而不是父级块元素。codepen示例
2、只有当设置对应的方向(top/right/bottom/left),才会有作用,并且可以互相叠加,可以同时设置四个方向。
3、即使设置了 position: sticky,也只能显示在父级块元素的内容区域,他无法超出这个区域,除非你设置了负数的值。
4、position: sticky 并不会触发 bfc,简单来讲就是计算高度的时候不会计算 float 元素。
5、当设置了 positi on: sticky 之后,内部的定位会相对于这个元素(codepen示例)
6、虽然 position: sticky 表现的像 relative 或者 fixed,所以也是可以通过 z-index 设置他们的层级。当这个元素的后面的兄弟节点会覆盖这个元素的时候,可以通过 z-index 调节层级。(codepen示例)
7、粘性布局元素的父级元素在可视范围内,该元素的布局为relative,反之,则为fixed。
看完了这篇文章,相信你对css如何设置粘性定位有了一定的了解,想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。