Html 块元素的垂直间距

Html 块元素的垂直间距,html,css,Html,Css,我在图像旁边安排了几个块级元素,并使用了以下HTML/CSS来定位所有内容: <style> #logo p { font-size: 24px; margin-left: 220px; margin-top: -27px; } #logo img { position: absolute; top: 10px; } #logo #a { padding-top: 43px; } </style> <div id

我在图像旁边安排了几个块级元素,并使用了以下HTML/CSS来定位所有内容:

<style>
#logo p {
    font-size: 24px;
    margin-left: 220px;
    margin-top: -27px;
}

#logo img {
    position: absolute;
    top: 10px;
}

#logo #a {
    padding-top: 43px;
}
</style>

<div id="logo">
  <p id="a">Label A</p>
  <p id="b">Label B</p>
  <img src="http://upload.wikimedia.org/wikipedia/commons/thumb/5/51/IBM_logo.svg/200px-IBM_logo.svg.png" />
</div>
此处为可编辑版本:

为了使这两个p元素更接近,我使用了一个边距顶部的组合:-27px;和填充顶部:43px;看起来有点笨重

有更好/更干净的方法吗?

以下是我的解决方案:

html


提示:使用float:left,无绝对位置希望这就是答案。
<div id="logo">
    <div id="imgCont">
     <img src="http://upload.wikimedia.org/wikipedia/commons/thumb/5/51/IBM_logo.svg/200px-IBM_logo.svg.png" />
    </div>
    <div id="labelCont">
      <p id="a">Label A</p>
        <span style="clear:left"></span>
      <p id="b">Label B</p>
    </div>

</div>
*{
    padding:0;
    margin:0;
}

#logo p {
    font-size: 24px;
}

#logo img {
    position: relative;
}

#imgCont{
    float:left;
}

#labelCont{
    float: left;
    padding: 15px;
}