css position

语法

  • position:static | relative | absolute | fixed | center(CSS3)| page(CSS3)| sticky(CSS3)| inherit

  • 默认值:static

  • 适用于:除display属性定义为table-column-group | table-column之外的所有元素

  • 继承性:无

  • 动画性:否

  • 计算值:指定值

  • 媒体:视觉

说明

  • static:每一个元素都有一个默认的position值,那就是static,元素将会嵌入在正常的文档流里。此时,尽管你为该元素设置了left/right/top/bottom属性,但对于该元素来说,均没有效果。

  • relative:1)对象遵循常规流,并且参照自身在常规流中的位置通过top、right、bottom、left这4个定位偏移属性进行偏移时不会影响常规流中的任何元素;2)随便给元素添加relative属性而不设置定位偏移则相当于未进行任何设置,但是却可以作为子absolute元素的父级定位元素。

  • absolute:1)对象脱离常规流,即盒子的偏移位置不影响常规流中的任何元素;2)此时偏移属性参照的是离自身最近的定位祖先元素,如果没有定位的祖先元素,则一直回溯到body元素;3)其margin不与其他任何margin折叠。

  • fixed:1)与absolute一致,但偏移定位是以窗口为参考;2)当出现滚动条时,对象不会随着滚动。

  • center:与absolute一致,但偏移定位是以定位祖先元素的中心点为参考。盒子在其包含容器垂直水平居中。

  • page:与absolute一致。元素在分页媒体或者区域块内,元素的包含块始终是初始包含块,否则取决于每个absolute模式。

  • sticky:对象在常态时遵循常规流。它就像是relative和fixed的合体,当在屏幕中时按常规流排版,当卷动到屏幕外时则表现如fixed。该属性的表现是现实中你见到的吸附效果。

  • inherit: position值不会级联(doesn’t cascade, 不会直接影响到子元素), 所以这个值可以强制它从父元素继承position值.

概念说明 文档流:从左到右,自上而下,结合元素块状和内联属性的默认位置摆放形式。

解读

absolute
  1. 其中对于absolute一直有一个误解:absolute是相对定位,相对必然要有一个相比较的对象,之前一直认为是其最近的relative父元素,今天看到某一篇文章后才知道这其实是错误的。正确的答案是absolute相比较的对象是其最近的非static父元素,也就是说父元素如果是absolutefixed定位,那么也是有效的相对定位父级元素。
  2. 如果一个元素的position属性被设置为absolute, 那么这个元素的父元素将认为这个子元素根本不存在。和未进行clear的浮动元素一样,不能撑起父元素高度。
fixed

正如前面所说过的, fixed非常类似于absolute, 它能帮助你定位你的元素在文档的任何地方, 然而, fixed不受滚动条的影响。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值