vertical-align
предназначен для элементов таблицы, а не для регулярных делений и т. Д. Чтобы получить vertical-align
middle для работы, элемент должен быть установлен на display:table-cell
, а его родительский элемент должен быть установлен на display:table-row
Будьте осторожны с этим, потому что это действительно меняет способ взаимодействия элемента с его родственными элементами, и это может определенно изменить способ размещения вашей страницы.
Лучшее использованиеэто было бы что-то вроде этого:
<div class="table-row">
<div class="td">lorem ipsum</div>
<div class="td">dolor sit amat</div>
</div>
Css:
.table-row {display: table-row}
.td {display: table-cell; vertical-align: middle;}
ПРИМЕЧАНИЕ
Это не будет работать с элементами, которые плавают слева/ вправо, и это изменит то, как ширина границы влияет на общую ширину элемента.
Я бы использовал это только с табличными данными, так же, как я бы предложил использовать только таблицу.