老师,可以这样理解吗?

老师,可以这样理解吗?

#right {

background-color: red;

width:150px;

margin-right: -150px;  

}

margin-right: -150px;  是元素向右移动,因为是浮动元素,所以向上挤了

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,因为一个盒子实际占据页面的宽度由: width + padding+ border + margin 四个部分组成

案例中的right元素设置了width值为150px, margin-right值为-150px, 那么就可以理解为元素实际占据页面的宽度为0 。

具体可以参考如下解析:三个部分设置float属性后,它们本来应该在一行显示的。但是由于middle设置宽度100%, 占据了父元素所有的空间,父元素没有空间容纳另外两个元素,所以另外两个元素在下面一行并排显示了。

http://img1.sycdn.imooc.com//climg/5f0a6bfb09ba39d205630069.jpg

根据前面分析可知,设置margin-right值为-150px之后,盒子实际占据页面宽度为0,所以right盒子会挨着middle盒子在一排显示。

同学可以试着再理解下,祝学习愉快~

好帮手慕久久 2020-07-11 18:03:13

同学你好,理解的不太准确,可以如下这样理解:

margin-right负值,会让该元素右侧的元素左移,如下:

http://img1.sycdn.imooc.com//climg/5f098e4409edd57905540558.jpg

http://img1.sycdn.imooc.com//climg/5f098e460932294f04890233.jpg

这就相当于元素自身宽度变小了,所以当“#right”设置margin-right: -150px;  时,就相当于它自身没有宽度了,所以它就上去了。

如果我的回答帮到了你,欢迎采纳,祝学习愉快!

  • 提问者 qq_勿忘初心_H #1
    margin-right负值,会让该元素右侧的元素左移 可是案例中我们是在right上设置的margin-right:-150px; right后面(右侧)没有元素啊,不太理解元素自身宽度怎么就变小了
    2020-07-11 20:43:56
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师