0

我正在尝试在 a 中对齐图像和文本,div因此它看起来如下所示


图片文字


但是,当我将它们对齐时,div不再出现的背景颜色。

谁能建议我做错了什么?

HTML:

<div class="introduction">
    <div class="image">
        <img src="">
    </div>
    <div class="text">
        <p>Text</p>
        <p>Good luck!!</p>
    </div>
</div>

CSS:

.introduction {
    margin: 0 50px;
    padding: 20px;
    background-color: #FFFFFF;
    color: #000000;
    -moz-border-radius: 10px;
    border-radius: 10px;
}
.image {
    width: 30%;
    float: left;
}
.text {
    width: 70%;
    float: left;
}
4

3 回答 3

1

将两个浮动并排放置在那里可以使父容器的高度有效地为 0。您可以放置​​一个带有 style="clear:both;" 的 div 在父母的结束标签之前,你会得到你的背景。

<div class="introduction">
<div class="image">
    <img src="" />
</div>
<div class="text">
    <p>
    Text
    </p>
    <p>Good luck!!</p>
</div><div style="clear:both;"></div></div>
于 2013-07-24T14:04:04.967 回答
0

我会建议你2个解决方案:

1)如果你想让你的输出看起来像这样:

IMAGE TEXT 
IMAGE TEXT
      TEXT

HTML:

<div class="whole">
    <img class="ib" src="myimg.png" alt="my img" />
    <p class="ib">my text my text my text my text my text my text my text is so short I will die alone</p>
</div>

CSS:

.ib{ display:inline-block;}
.whole{ vertical-align:top}

.ib img{width:30%; border:0;}
.ib p{width:70%;margin:0;padding:0;}

2)或像这样:

IMAGE TEXT TEXT
TEXT TEXT

HTML:

<img src="myimg.png" alt="my img" class="leftimg" />
<p>my text my text my text is so short I will die alone</p>

CSS:

.leftimg {
   float:left; 
   margin-right:5px;
}

演示:http: //jsfiddle.net/goodfriend/b66J8/37/

于 2013-07-24T14:18:17.790 回答
0

这样的事情可能会达到你想要的:

<style>
    .introduction{
        margin:0px;
        padding:5px;
        background-color:orange;
    }

    .introduction img{
        float:left;
        padding:10px;
    }

    .introduction p{
        padding-left:50px;
        background-color:blue;
    }
</style>

<div class="introduction">
    <img src="img/can_25.png" />
    <p>Text</p>
    <p>Good Luck</p>
</div>

由于您的 p 没有浮动,因此它们将使您的 div 保持打开状态..取决于图像的大小。

于 2013-07-24T14:08:46.070 回答