定位详解(相对,绝对定位)

定位

如果,说浮动, 关键在一个 “浮” 字上面, 那么 我们的定位,关键在于一个 “位” 上。定位原理上可以帮助你快速精准 脱离文档流束缚的情况下将元素放在你想放置的位置。就跟精确制导定位系统一样,输入坐标就可以轻松搞定。

定位在网页中的应用

元素的定位属性

静态定位(static)

静态定位是所有元素的默认定位方式,当position属性的取值为static时,可以将元素定位于静态位置。 所谓静态位置就是各个元素在HTML文档流中默认的位置。

主要用于取消定位。

相对定位 relative

相对定位是将元素相对于它在标准流中的位置进行定位,当position属性的取值为relative时,可以将元素定位于相对位置。

对元素设置相对定位后,可以通过边偏移属性改变元素的位置,但是它在文档流中的位置仍然保留。

使用position:relative;开启相对定位

设置偏移量:

  • left 相对于定位位置,左侧的偏移量

  • right 相对于定位位置,右侧的偏移量

  • top 相对于定位位置,顶部的偏移量

  • bottom 相对于定位位置,底部的偏移量

    position:relative 开启了相对定位 特点

  • 如果不设置偏移量,元素的位置是不发生任何变化

  • 设置偏移量,偏移量的相对位置是相对于元素原来在文档流中的位置(left:0;top:0)

  • 设置相对定位后,元素的性质是不发生变化
  • 设置相对定位后,元素的层级会提高
  • 设置相对定位后,元素是不会脱离文档流

绝对定位absolute

绝对定位,它的原点是相对于其包含块来定位的。

包含块:containing block

正常情况下:离当前元素最近的祖先块元素

定位情况下:离他最近的开启了定位的祖先元素,如果所有的祖先元素都没有开启定位,则会相对于浏览器窗口进行定位,html (根元素,初始包含块)

绝对定位与相对定位不同的地方在于

  1. 绝对定位完全脱标 相当于自建一个新的层级

  2. 绝对定位的移动相对坐标原点为 相对定位父级的左上角原点

    1. 没有相对定位父级的情况下 以浏览器窗口显示区域(window view)左上角为定位原点

    2. 有相对定位父级(绝对、固定或相对定位)的父元素/祖先的情况下 以相对定位父级的左上角为定位原点

  3. 绝对定位的宽度百分比 继承自相对定位父级 并不继承于 结构父级

一般我们常用的是“子绝父相 ”:

        子元素绝对定位,父元素开启相对定位

当然,子级是绝对定位,父亲只要是定位即可(不管父亲是绝对定位还是相对定位,甚至是固定定位都可以),就是说, 子绝父绝,子绝父相都是正确的。

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
绝对定位相对于元素最近的已定位的祖先元素进行定位的。如果元素没有已定位的祖先元素,那么它的位置则是相对于最初的包含块(body)进行定位。\[2\]相对定位是一种定位方式,通过设置元素的位置属性为relative,使元素相对于其正常位置进行偏移。相对定位的元素仍然占据原来的空间,不会影响其他元素的布局。\[1\]绝对定位相对定位是两种不同的定位方式,它们之间没有直接的依赖关系。绝对定位可以独立使用,也可以与相对定位结合使用,但相对定位不依赖于绝对定位。\[3\] #### 引用[.reference_title] - *1* [css中的定位以及绝对定位相对定位的区别](https://blog.csdn.net/wrx200077/article/details/108592065)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [绝对定位相对定位详解](https://blog.csdn.net/langyixuan/article/details/106124732)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [HTML定位——绝对定位相对定位、固定定位](https://blog.csdn.net/qq_52499703/article/details/125435762)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值