0

http://jsfiddle.net/dsUnc/

但是,当我用文本替换 img 标签时 - 元素的位置与预期的一样(彼此相邻,高度相同)。

发生在所有浏览器上。

如何解决?

float: left不是一种选择

HTML:

<div id='main'>
    <div id='first'>
      <img src='https://www.google.ru/images/icons/product/chrome-48.png' height='30'>
    </div>
    <div id='second'>Text</div>
</div>

CSS:

div {
    border: 1px solid gray;
    height: 30px;
}
#first {
    display: inline-block;
    height: 30px;
}
#second {
    display: inline-block;
    height: 30px;
}
4

3 回答 3

3

添加vertical-align: top做它没有float

jsFiddle

#first {
    display: inline-block;
    height: 30px;
    vertical-align: top;
}
#second {
    display: inline-block;
    height: 30px;
    vertical-align: top;
}
于 2013-03-31T16:15:05.210 回答
1

制作容器relative position和你想要定位的absolute positiondivtop:0;

http://jsfiddle.net/uqAGt/

于 2013-03-31T16:20:12.320 回答
0

只需将float: leftor添加vertical-align: top到您的子 div 中:

演示:http: //jsfiddle.net/dsUnc/2/

演示:http: //jsfiddle.net/dsUnc/5/

于 2013-03-31T16:14:58.127 回答