如何垂直对齐浮动图像旁边的文本?

Mos*_*ava 19 css vertical-alignment css-float

我想在浮动图像后垂直对齐跨度.我在堆栈溢出中搜索它并找到这篇文章.但是我的形象浮现了.

<div>
    <img style="width:30px;height:30px; float:left">
    <span style="vertical-align:middle">Doesn't work.</span>
</div>
Run Code Online (Sandbox Code Playgroud)

我给vertical-align:middle图像,没有任何改变!

谢谢

san*_*eep 10

首先float从中删除.像这样写:

<img style="width:30px;height:30px;vertical-align:middle" src="http://lorempixel.com/output/abstract-q-c-640-480-8.jpg">
    <span>Doesn't work.</span>
Run Code Online (Sandbox Code Playgroud)

检查这个http://jsfiddle.net/ws3Uf/

  • 我使用你的方法,并从我的图像中删除了我的浮点数。但是当我将 `&lt;span&gt;` 内容更改为 2 行长的内容时,第二行转到图像底部最后,我将 `display:inline-block` 添加到 `&lt;span&gt;` 并且它起作用了!谢谢 (2认同)
  • 如果文本足够长而需要多行,则此效果将与`float'不一样。http://jsfiddle.net/9667cqun/ (2认同)

The*_*see 10

虽然这是一篇非常古老的帖子,但您可以使用Flexbox以下方法实现此目的:

div {
 display: flex;
 align-items: center;
}
Run Code Online (Sandbox Code Playgroud)
<div>
<img style="width:30px;height:30px;" src="http://lorempixel.com/output/abstract-q-c-640-480-8.jpg" />
<span>Doesn't work.</span>
</div>
Run Code Online (Sandbox Code Playgroud)

JsFiddle的例子


Sco*_*ttS 6

添加line-height(等于图片高度):

<div>
    <img style="width:30px;height:30px; float:left">
    <span style="vertical-align:middle; line-height: 30px;">Works!</span>
</div>
Run Code Online (Sandbox Code Playgroud)

见例子.