为了账号安全,请及时绑定邮箱和手机立即绑定

为什么mainbody必须设置为relative?

为什么mainbody必须设置为relative?

正在回答

5 回答

因为需要以mainbody为基准点,即以mainbody所在左上点为基准来设置content的位置。

如果光设置content为绝对定位,那么会以<html>为基准点放置content,会造成content覆盖box1的位置或者处于页面最上部分的内容。所以应用老师所说“有已定位祖先元素,以距其最近的已定位祖先元素为偏移参照基准”,即要把content上的父结点mainbody设一个绝对定位,这样content最会在mainbody的位置来放置。

那么mainbody只要设置绝对定位中的静态定位与相对定位都可以说其已经是“已定位祖先元素”了。

1 回复 有任何疑惑可以回复我~

当定位为绝对定位且有偏移量时,此种情况属于我下图中打勾的这类情况:

http://img1.sycdn.imooc.com//55ff5e920001ede705970308.jpg


0 回复 有任何疑惑可以回复我~

大家的普遍认识就是: 因为有absolute所以要设置relative.这种观念是错误的,父级的relative完全可以不要.

1 回复 有任何疑惑可以回复我~

可以设置成相对定位,绝对定位,固定的任意一种,但是相对定位元素处于文档流之中,即便有偏移,偏移也是参照最初始的位置,比绝对定位稳定,所以需要一个参照基准的时候,会把父包含块设置成相对定位。

具体可以再看看上一个视频4-3 绝对定位。

1 回复 有任何疑惑可以回复我~

那要看需求  因为下方有absolute所以要设置relative


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
网页布局基础
  • 参与学习       214705    人
  • 解答问题       1756    个

让你精通CSS中三大定位机制,彻底掌握网页布局的相关知识

进入课程

为什么mainbody必须设置为relative?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信