Vertikaliai sulygiuoti tekstą šalia paveikslėlio?

Kodėl neveikia vertical-align: middle? Tačiau vertical-align: top veikia.

span{
  vertical-align: middle;
}
<div>
  <img src="http://lorempixel.com/30/30/" alt="small img" />
  <span>Doesn't work.</span>
</div>
Sprendimas

Tiesą sakant, šiuo atveju tai labai paprasta: paveikslėliui pritaikykite vertikalų išlyginimą. Kadangi viskas vienoje eilutėje, iš tiesų norite sulygiuoti vaizdą, o ne tekstą.


<div>

  <span style="">Works.</span>
</div>

Išbandyta FF3.

Dabar tokio tipo išdėstymui galite naudoti flexbox.

.box {
   display: flex;
   align-items:center;
}
<div class="box">

    <span style="">Works.</span>
</div>
Komentarai (23)

Kad tai veiktų, turite nustatyti line-height pagal div aukštį.

Komentarai (2)

Tikriausiai norite to:

<div>

   <span style="vertical-align:50%; line-height:30px;">Didn't work.</span>
</div>

Kaip siūlė kiti, pabandykite paveikslėlyje naudoti vertical-align:

<div>

   <span>Didn't work.</span>
</div>

CSS nėra erzinantis. Jūs tiesiog neskaitote dokumentacijos. ;P

Komentarai (3)