Заставить некоторую маржу-вершину одному из 2 элементов встроенного блока
У меня есть следующий код, который в основном изображение с текстом справа, все в одной строке. Я хотел бы, чтобы текст был отцентрирован вертикально по отношению к изображению:
|
|
img myText here
|
|
Вот мой код
img, .info {
display: inline-block;
}
<img src="http://placehold.it/100x150">
<span class="info">
<span>FOO</span>
<span>BLAH</span>
</span>
Я попытался применить какое-то поле к классу информации, но он также перемещает img. Как мне это сделать?
Спасибо
4 ответа
Решение
Как уже упоминалось, используйте вертикальное выравнивание, чтобы центрировать элементы по вертикали. Кроме того, вы должны сделать их встроенными блоками, чтобы добавить отступ:
img, .info {
display: inline-block;
vertical-align:middle;
}
.info {
padding-left:32px;
}
<img src="http://placehold.it/100x150">
<span class="info">
<span>FOO</span>
<span>BLAH</span>
</span>
Попробуйте вертикальный метод выравнивания по центру
.holder img{
vertical-align:middle;
}
<div class="holder">
<img src="http://placehold.it/100x150">
<span class="info">
<span>FOO</span>
<span>BLAH</span>
</span>
</div>
Поместите их в обертку, затем выровняйте по вертикали: https://jsfiddle.net/g7mk4cp0/
HTML:
<div class="wrapper">
<img src="http://placehold.it/100x150">
<span class="info">
<span>FOO</span>
<span>BLAH</span>
</span>
</div>
CSS:
.wrapper > img, .wrapper > span {
vertical-align: middle;
}
Просто используйте vertical-align:middle
Элемент находится в середине родительского элемента
img, .info {
display: inline-block;
vertical-align:middle;
}
<img src="http://placehold.it/100x150">
<span class="info">
<span>FOO</span>
<span>BLAH</span>
</span>