这一次,一起来了解下position的盲区

为什么要了解position?

学习这个知识之前,我们首先要知道为什么要学习这个知识点,position不仅是面试中的常考点,很多CSS布局中也是不可获取的一种方案,因此我们必须熟练掌握这个知识。

Position有哪些属性?

1. 静态定位static

静态定位指的是目标元素使用正常的布局,也就是按照元素在文档流中的默认位置进行排列布局,此时设置top、right、bottom、left和z-index属性是无效的。

2. 相对定位relative

相对定位是相对元素未添加定位时的位置进行移动,因此会在未添加定位的时候所在的位置留下空白。

3. 绝对定位absolute

绝对定位首先会脱离标准文档流,并且不会为元素预留空间,绝对定位相对的是最近的非静态定位的祖先元素来进行偏移。

4. 固定定位fixed

固定定位会脱离标准文档流,并且不会未元素预留空间,固定定位相对的是屏幕视口来进行偏移的,元素的位置在屏幕滚动的时候不会发生变化。

5. 粘性定位sticky

粘性定位是相对定位和固定定位的混合,元素在跨越特定阈值之前为相对定位,之后为固定定位,这个阈值是根据视口滚动来进行判断的。粘性定位并不脱离标准文档流。

Postiton都有哪些应用场景?

  1. 标准文档流就是静态定位的例子。
  2. 绝对定位和相对定位最经典的例子就是子绝父相布局。
  3. 例如掘进论坛文章的点赞按钮,固定在窗口的某个位置,不随滚动而滚动。
  4. 粘性定位的经典例子是头部固定。

哪些定位会脱离标准文档流?

  1. 绝对定位
  2. 固定定位

猜你喜欢

转载自blog.csdn.net/sinat_41696687/article/details/123447034