相对定位,绝对定位和固定定位的区别

定位:

 定位指的就是将指定的元素摆放到页面的任意位置,通过定位可以任意的摆放元素, 通过position属性来设置元素的定位
 可选值:
                         static:默认值,元素没有开启定位
                         relative:开启元素的相对定位
                         absolute:开启元素的绝对定位
                         fixed:开启元素的固定定位(也是绝对定位的一种)


1. 当元素的position属性设置为relative时,则开启了元素的相对定位

          1.当开启了元素的相对定位以后,而不设置偏移量时,元素不会发生任何变化
          2.相对定位是相对于元素在文档流中原来的位置进行定位
          3.相对定位的元素不会脱离文档流(所以元素在文档流中的特征他都包含)
          4.相对定位会使元素提升一个层级
          5.相对定位不会改变元素的性质,块还是块,行内还是行内
 当开启了元素的定位(position属性值是一个非static的值)时,可以通过left right top bottom四个属性来设置元素的偏移量
                      left:元素相对于其定位位置的左侧偏移量
                      right:元素相对于其定位位置的右侧偏移量
                      top:元素相对于其定位位置的上边的偏移量
                      bottom:元素相对于其定位位置下边的偏移量
 通常偏移量只需要使用两个就可以对一个元素进行定位,  一般选择水平方向的一个偏移量和垂直方向的偏移量来为一个元素进行定位

2. 当position属性值设置为absolute时,则开启了元素的绝对定位                

          1.开启绝对定位,会使元素脱离文档流
          2.开启绝对定位以后,如果不设置偏移量,则元素的位置不会发生变化
          3.绝对定位是相对于离他最近的开启了定位的祖先元素进行定位的(一般情况,开启了子元素的绝对定位都会同时开启父元素的相对定位)如果所有的祖先元素都没有开启定位,则会相对于浏览器窗口进行定位
          4.绝对定位会使元素提升一个层级
          5.绝对定位会改变元素的性质, 行内元素变成块元素,块元素的宽度和高度默认都被内容撑开       

3.当元素的position属性设置fixed时,则开启了元素的固定定位

固定定位也是一种绝对定位,它的大部分特点都和绝对定位一样 ,不同的是: 

固定定位永远都会相对于浏览器窗口进行定位  ,固定定位会固定在浏览器窗口某个位置,不会随滚动条滚动,IE6不支持固定定位

注:加了绝对定位和固定定位之后元素模式也会跟着变化,转为行内块。(行内块的宽度和高度跟内容有关) 

注意:开启固定定位的盒子居中:left:50%;再走自身宽度的一半:transform:translateX(-50%)

4.层级

如果定位元素的层级是一样,则下边的元素会盖住上边的,通过z-index属性可以用来设置元素的层级:

 1.z-index的默认值是0,取值越大元素的层叠顺序越靠上

2.可以为z-index指定一个正整数作为值,值只能是数值,不能加单位,该值将会作为当前元素的层级,层级越高,越优先显示

3.对于没有开启定位的元素不能使用z-index,父元素的层级再高,也不会盖住子元素


 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值