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

为什么设置content样式紧贴着#mainbody顶部的时候不能用margin-top:0px;

我想请问下为什么在#content { position:absolute; margin-left:200px; top:0px; }样式表里设置顶部与#mainbody顶部紧贴着的时候不能用margin-top:0px

正在回答

2 回答

是可以用,但没有效果而已。意思是0像素的顶部外边框距,是没有效果的。所以不需要写上这段代码。

要达到“设置顶部与#mainbody顶部紧贴着”的效果,只需要:

#mainbody{position:relative;}

#content{position:absolute;top:0px;}就可以了。

另:

根据练习题要求“任务3. 请补充代码使#content与#sidebar之间的间距为20px”,你的代码应该是:

margin-left:20px;

而不是200px

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

sidebar 没有被设置任何浮动或者定位,因为使用 div 包裹,它本身宽度占满父级元素

content 内容在设置 absolute 后,如果不设置位置属性(top,left等)那么它会脱离文档流并处于本来该出现的位置,你可以试试在保留 absolute 属性情况下不设置 top 等位置属性,你会发现 footer 内容是被 content 覆盖的。

那么这时候你的 margin-top 属性就是设置 content 与 sidebar 间的外边距了,就不是相对于 mainbody 进行定位了。

你可以把 top,left 等当做定位的坐标,而把 padding,margin 当做你定位元素本身的属性,要注意 top 和 margin-top 是有本质区别的。

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

举报

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

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

进入课程

为什么设置content样式紧贴着#mainbody顶部的时候不能用margin-top:0px;

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