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

可是不管横向两列或者更多列布局marginleft和left的值相同,效果都一样,这又是为什么?

mainbody{position:relative;}    content{position:absolute; top:0;} mainbody设置相对定位,content设置绝对定位,绝对定位的值是多少呢,直接加了一个top:0,所以content会跑到上边去。与父元素对齐。而margin属性,是两个盒子之间的外边框距离,也就是说不管你有没有定位,与margin无关。margin只作用于两个盒子之间,所以content的margin-top属性就只会与它前面的sidebar发生作用。可是不管横向两列或者更多列布局marginleft和left的值相同,效果都一样,这又是为什么?

正在回答

3 回答

margin-lefe这里是与父元素的左边距,所以和相对父元素右移left的效果是一样的。我是这样理解的。

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

Absolutely positioned boxes can have margins, they do not collapse with any other margins.

官方文档的解释哦


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

当你使用绝对定位时该物体就脱离文档流了,所以设置margin只会和你设置的相对定位点起作用,————如果是练习题的话。你把内边距padding-left设置一下看看效果

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

举报

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

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

进入课程

可是不管横向两列或者更多列布局marginleft和left的值相同,效果都一样,这又是为什么?

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