解析CSS的相对定位和绝对定位

文章详细阐述了CSS中position属性的default值static及其特点,以及relative和absolute定位的工作原理。relative定位允许元素相对于其正常位置移动,而不脱离文档流;而absolute定位则使元素脱离文档流,相对于最近的定位父级(或body)定位。此外,文章提到了绝对定位对层级(z-index)和内嵌元素宽高设定的影响。
摘要由CSDN通过智能技术生成

通常情况下,我们元素的position属性的值默认为static 就是没有定位,元素出现在正常的文档流中,,这个时候你给这个元素设置的left,right,bottom,top这些偏移属性都是没有效果的,不会生效,比如你设置一个距离左边距偏移100px的声明:left:100px 那么这条声明不会起到任何效果。

还有z-index属性在这时也不会生效。

也就是说我们平时如果不给某元素一个position属性的声明,那么它默认的就是我上述的这种情况,不过因为有了浮动,所以通常情况下我们还真不需要给元素设置position属性!

但是某些特殊的情况下,我们不得不用到position属性,那我们今天就讲讲position属性的relative和absolute值

绝对定位

语法:position:absolute

偏移绝对定位元素的位置语法

left 左

right 右

top 上

bottom 下

概念: 相对于定位父级进行定位 如果没有定位父级则会在css中一层一层向上寻找, 直到找到body [浏览器的窗口]。 有定位父级则相对于最近定位父级去进行定位。

解析:

我分为有定位父级以及没有定位父级俩种情况,这里咱们在下面展开讲一讲

一 有定位父级定位情况下 相对于最近的定位 (父级)去进行定位 ,这里注意!是定位父级,如果是兄弟关系的定位就算兄弟是相对定位 它是不会定位到相对定位兄弟的身上 毕竟它不会听兄弟的话 所以 我们一般称为 父相子绝***

接下来;咱们看下面的图片及其代码

如图我们可以看到 处于子元素的绿盒子 是以body为点来进行位置偏移的

如果给他的父亲元素添加相对定位 是什么样的情况呢 看下图

我们可以看到 它相对于自己的最近的父亲进行了定位偏移

绝对定位的概念既然已经说清了,那么我们接下来讲一讲它的特性 我想大家应该都知道元素都遵循普通文档流是垂直向下排列,那么咱们给处于普通文档流的第2个元素绝对定位会发生什么。如下图。

我们可以看到原本应该在box1下面的盒子上去了

行级标签是不能设置宽高的 如果将行级标签放入已经设置过绝对定位的元素中 ,它就可以

设置宽高。

由此可知,绝对定位的特性如下

1 脱离文档流

2 提升层级

3 可以使内嵌元素设置宽高

下面我们讲相对定位

相对定位:

{相对于元素本身的位置发生移动}

相对于元素在正常文档流中的位置移动它,把一个正常文档流

从他的默认位置按坐标进行移动

*/ /* 表象移动了但是实际位置还在占位 */

/*

定位属性:position

取值:relative

特性:

1 不会脱离文档流

2 提升层级

3 在不定义位置偏移属性时,对元素没有影响

使用场景:一般搭配绝对定位使用 当做绝对定位的复级 {父相子绝}

*/

/*

位置侧移量(坐标)

位置属性;

top 设置距离包含块body顶部的距离

bottom 设置距离包含块底部的距离

left 设置距离包含块左侧的距离

right 设置距离包含块右侧的距离

网页坐标轴 横x下y

到这里呢 我对于相对绝对定位的理解就结束了,如有缺少的知识点还请各位大神评论补充,

如有不对的也请评论指出。最后,喜欢的可以给个点赞嘛 。

谢谢你的观看。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值