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

为什么如果没有设置浮动float就占据了整一行以及为什么wrap-center的position得设置relative

.wrap{

    left:50%;

    position:relative;

    float:left;

}

.wrap-center{

    background:#ccc;

    position:relative;

    left:-50%;

}

    http://img1.sycdn.imooc.com//570b57060001599909450125.jpg如果没有设置浮动float就占据了整一行,这是怎么回事,还有可不可以把两个float设置成right

http://img1.sycdn.imooc.com//570b5751000175ab09180193.jpg如果把wrap-center的position属性设置成absolute就变成纵向的了,为什么,谁能解释一下谢谢


正在回答

3 回答

首先不管你定不定义浮动,这节都是要在讲“无宽度块状元素”,既然没有定义宽度就默认这个块状元素会横着沾满浏览器,然后这节讲的就是怎么设定“无宽度块状元素”,这里讲的就是要用float,如果你设定成功了就会像上一节一样这个“无宽度块状元素”会随着你的输入长度而改变宽度

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

jazia 提问者

懂了,div是块状元素,默认占一行的,谢谢你的用心回答!
2016-04-11 回复 有任何疑惑可以回复我~

再来说第二个问题,你尝试一下 把wrap的框显示出来 给个red 你就会发现,这段文字的位置在哪里?一看,尼玛!文字跑到框外面去了,这样你就晓得了吧 你这个absolute把本来应该在wrap中的东西给强行给挤出来 了。所以说,不应该在父元素有定位标识的时候子元素来个absolute什么的定位移动属性。说了这么多其实我也是新手,只是在不断尝试的时候去发现问题的原因,也许我的解释也不能说明什么。

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

jazia 提问者

是不是用了absolute就是在父元素所在的边界里面进行定位,但是在这已经超出父元素的边界了所以就给挤出来了 如果用relative的话就可以正常定位,不关父元素的边界,所以只能用relative
2016-04-11 回复 有任何疑惑可以回复我~
#2

慕侠8493311 回复 jazia 提问者

恍然大悟
2016-04-16 回复 有任何疑惑可以回复我~

因为它属于块状元素,都是独占一行的,不让它独占一行就得设置float模型。absolute是绝对定位,它会将元素从文档流中拖出来

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

彭若飞

怎么将文字拖出来后放在父元素的同一行?我把文字转成inline后在拖出来后还是在父元素的下方=——=!
2016-04-11 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么如果没有设置浮动float就占据了整一行以及为什么wrap-center的position得设置relative

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号