图像浮动离开了div

时间:2013-08-12 10:44:47

标签: html css

我已将文字与图片合并,但猫会离开父div。有没有办法解决它?

http://jsfiddle.net/qn5LM/

<div style="border:1px solid #CCCCCC">
    <img style="float: left;" src="http://placekitten.com/g/200/200" height="100px" width="100px" border="1px"/>
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
</div>

6 个答案:

答案 0 :(得分:5)

一种不添加空元素的方法:

添加此css

.clearfix:after {
     visibility: hidden;
     display: block;
     font-size: 0;
     content: " ";
     clear: both;
     height: 0;
     }
.clearfix { display: inline-block; }
/* start commented backslash hack \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* close commented backslash hack */

并将类clearfix添加到div

<div style="border:1px solid #CCCCCC" class="clearfix">
    <img style="float: left;" src="http://placekitten.com/g/200/200" height="100px" width="100px" border="1px"/>
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text

</div>

http://jsfiddle.net/qn5LM/11/

答案 1 :(得分:2)

float:left添加到父div

<强> DEMO

overflow:auto添加到父div

答案 2 :(得分:2)

正确的方法是将overflow: hidden添加到outer-div的样式中。见jsFiddle

<div style="border:1px solid #CCCCCC; overflow: hidden">
    <img style="float: left;" src="http://placekitten.com/g/200/200" height="100px" width="100px" border="1px"/>
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
</div>

答案 3 :(得分:1)

只需将位置:绝对添加到div ...

<div style="border:1px solid #CCCCCC; position:absolute;">
    <img style="float: left" src="http://placekitten.com/g/200/200" height="100px" width="100px" border="1px"/>
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
</div>

答案 4 :(得分:0)

浮动元素时,您将它们从文档的oringinal流中取出。

应用overflow:hidden;到父元素可以快速解决这个问题。

请查看clearfix以获取更多信息:

http://css-tricks.com/snippets/css/clear-fix/

请注意:

  溢出:隐藏;也隐藏了溢出,这在某些情况下可能是不良行为。

答案 5 :(得分:0)

在文字<div style="clear:both;"></div>

之后添加此内容

Demo