所以我试图在一个div内运行3个浮动,我遇到了这个问题。div内浮动太多
http://jsfiddle.net/sPUjQ/101/click me
每当我运行两个花车的背景颜色停留,但是当我尝试3辆花车然后就不见了!
有人可以告诉我发生了什么,为什么这样做?在做内联块时我不会遇到这种情况,只是float:left。
所以我试图在一个div内运行3个浮动,我遇到了这个问题。div内浮动太多
http://jsfiddle.net/sPUjQ/101/click me
每当我运行两个花车的背景颜色停留,但是当我尝试3辆花车然后就不见了!
有人可以告诉我发生了什么,为什么这样做?在做内联块时我不会遇到这种情况,只是float:left。
当浮动子div时,父级因为从正常文档流中删除而折叠。添加overflow:auto
父恢复你以后的行为:
.contain {
display: block;
background: blue;
margin: 0 auto;
overflow:auto;
}
你想保留两.contains
蓝色背景是什么?如果是,那么你将不得不删除float: left
至children of .contains
并添加display: inline
。
见我修改code
希望它能帮助。
我知道如何做内联,只是因为浮动和内联视觉工作相同,但行为不同。不过谢谢。 – user1576493 2014-08-28 03:08:13
试试下面的例子中, 浮法各自独立,
.contain{width: 100%; background: blue; margin: 0 auto;}
.one, .four{float: left; background: red;}
.two, .five{float: left; background: orange;}
.three, .six{float: left; background: yellow;}
我试图保留蓝色。试图理解为什么它消失。 – user1576493 2014-08-28 03:06:23
你应该在容器div的结束清除浮动,否则会崩溃。
.clear{
clear:both;
}
http://jsfiddle.net/sPUjQ/105/
你可以阅读更多详细介绍一下这里花车和他们的怪癖>http://css-tricks.com/all-about-floats/
我试图让他们并排走。 – user1576493 2014-08-28 03:09:00
或者只是改变你的花车为display:inline-block的 – beauXjames 2014-08-28 02:56:04
该诀窍!。你是否碰巧有链接来解释这种行为的更多细节?它为什么会发生这种情况没有任何意义。 – user1576493 2014-08-28 03:00:22
好吧,为了深入了解花车,请参阅https://developer.mozilla.org/en-US/docs/Web/CSS/float和http://www.w3.org/TR/CSS2/visuren .html#floats – j08691 2014-08-28 03:02:06