css中的相对定位和绝对定位

本文深入解析CSS中的相对定位和绝对定位,解释两者的工作原理及其在网页布局中的应用。相对定位元素保持原有位置,通过top和left属性调整偏移,而绝对定位则脱离正常文档流,根据最近的已定位祖先元素进行定位。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.position:relative;如果对一个元素进行相对定位,首先它将出现在他所在的位置上。然后通过设置垂直或水平的位置,让这个元素“相对于”它的原始起点进行移动。(再一点,相对定位时,无论是否进行移动,元素仍然占据原来的空间。因此,移动元素会导致它覆盖其他框)例如#mybox{position:relativ;left:20px;top:20px;}效果就是使这个层乡下和向左移动了20px。

2.position:absolute;表示绝对定位,位置将依据浏览器左上角的0点开始计算,绝对定位使元素与文档流无关,因此不占据空间。普通文档流中元素的布局就像绝对定位的元素不存在时一样。它相对于最近的已定位的祖先元素,如果元素没有已定位的祖先元素,那么它的位置相对于最先的包含块。(因为绝对定位的框与文档流无关,所以它们可以覆盖页面上的其他元素并可以通过z-index来控制这些框的堆放次序。z-index的值越高,框在堆中的位置就越高。)
 
那么现在我们大家做的网页大部分都是居中的,那么我需要这个元素跟着网页中的某个元素位置不论分辨率时多少它的位置始终是针对页内的某个元素的,那么单纯的absolute是不行的。正确的解决方法就是在元素的父级元素定义为position:relative;(这里可以是祖父级,也可以是position:absolute;)需要绝对定位的元素设为position:absolute;这样再设定top,right,bottom,left的值就可以了,这样其定位的参照标准就是父级的左上角padding的左上侧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值