CSS定位内容小结

在页面布局时,如果同时涉及到多个块就需要对各个块的定位方式进行处理,在看了很多关于布局的问答之后有以下心得。

首先说一下各种定位方式的区别

  • absolute 绝对定位,我理解为当一个块定位方式设置为绝对定位后,在布局中,首先会依据设置定位属性为relative/absolute/fixed的祖先元素进行定位这里要注意的是,不一定是父元素,也可以是爷爷元素,或者祖父元素,统称祖先元素,如果在向上匹配的过程中匹配到祖先元素设置了定位属性,则会相对于此祖先元素进行定位,而不会继续向上匹配,如果祖先元素全都没有设置定位属性。 则会根据body进行定位。绝对定位会脱离文档流

  • relative 相对定位,在祖先元素这个级别,如果使用相对定位,在设置偏移时会参照原本正常出现的位置进行偏移,但是原本的位置并不会被占用,所以可以避免在偏移之后其他元素布局被打乱的情况。相对定位不会脱离文档流

  • 在设置定位关系时,如果对子元素设置了相对定位,则需要对父元素或祖先元素也设置一个定位属性,对祖先元素设置定位属性并不是为了改变祖先元素的位置,而是起到一个辅助子元素定位的作用,使子元素相对于需要的父元素进行定位,而不是其他父元素。

  • 另外需要注意的是,不论是相对定位还是绝对定位,如果只设置了属性而不设置偏移,对该元素本身的位置并不影响。
    在布局时使用子绝父相的用意,我认为是需要保留父元素的空间,如果父元素设置了绝对定位,脱离文档流之后可能会影响父元素以外的布局,所以父元素采用相对定位的方式

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值