CSS position属性
css 的 position 属性用于指定一个元素在文档中的定位方式。top、right、buttom、left属性则决定了该元素的最终位置。
position取值:static(默认)| relative | absolute | fixed | sticky
static
一般的标签元素不加任何定位属性都属于静态定位,在页面的最底层,属于标准流。
relative 相对定位
- 不脱标(在使用相对定位时,无论是否进行移动,元素仍然占据原来的空间)
- 相对于元素自身的位置进行定位

absolute 绝对定位
- 脱标
- 相对于
最近的有定位的祖先元素(static除外)进行定位,如果没有则相对于文档body定位(并非相对于浏览器窗口) - 使内联元素支持宽高:即给元素加上absolute就相当于给元素加上了display:block;,会使该元素具备块元素的特征
fixed 固定定位
- 脱标
- 相对于浏览器窗口定位,并且不会随着滚动条进行滚动(利用这个可以制作“返回顶部”或广告、固定弹窗等功能)
sticky 黏性定位
position:sticky是一个新的css3属性。
当页面滚动未超出目标区域时,该元素的位置并不受到定位影响,设置的top、left等属性此时无效
当页面滚动超出目标区域时,它的表现就像 position:fixed; ,会根据设置的left、top等属性成固定位置的效果。
举例:
如果给一个stucky元素设置了top: 50px,那么在该sticky元素到达距离相对定位的元素顶部50px的位置时固定,不再向上移动。
- 不脱标
常用定位——“子绝父相”
- 场景:让子元素相对于父元素进行自由移动
- 含义:
子元素:绝对定位
父元素:相对定位 - 子绝父相好处:父元素是相对定位,则对网页布局影响很小
本文介绍了CSS中position属性的五个取值:static、relative、absolute、fixed和sticky。static是默认定位,relative进行相对定位,absolute实现绝对定位,fixed为固定定位,而sticky则是黏性定位。此外,文章还提到了'子绝父相'的定位技巧,即子元素绝对定位,父元素相对定位,以便在不影响页面布局的情况下自由移动子元素。

6602

被折叠的 条评论
为什么被折叠?



