Как вертикально отцентрировать изображение и текст в элементе блока?[CSS] - PullRequest
1 голос
/ 24 августа 2010

help me

Я пытаюсь сделать это с помощью CSS. Вот моя разметка:

<h2>
  <img src="A.gif" alt="A" width="30" height="30" />
  <img src="B.gif" alt="B" width="30" height="30" />
  18 pt; vertically centered;
</h2>
  • A и B - изображения размером 30x30 пикселей.
  • Маленькие красные линии - отступы / поля по 5 пикселей (в зависимости от того, что работает)
  • В результате высоты изображений и отступов по вертикали внешний контейнер имеет высоту 40px (30 + 5 + 5).
  • Ширина внешнего контейнера составляет 100%.

Примечание: Нет вероятности, что текст 18pt переполнит ширину контейнера. Предположим, это всегда будет одна строка.

Примечание: Если дополнительная разметка поможет получить желаемый вид, разметку можно изменить.

Как это можно сделать?

Ответы [ 2 ]

3 голосов
/ 24 августа 2010

Если я не ошибаюсь, вы можете использовать свойство vertical-align: text-bottom на img для достижения такого результата.

Вот небольшой тест: http://www.w3schools.com/Css/tryit.asp?filename=trycss_vertical-align

Вы можете попробовать удалить стили там и заменить их на
img { vertical-align: text-bottom; }
и текст должен быть выровнен по желаемому центру элемента страницы.

0 голосов
/ 24 августа 2010

Вы можете установить высоту строки в 40px, что приведет к вертикальному центрированию текста, если это только одна строка.

h2 {
    line-height: 40px;
}
h2 img {
    padding: 5px;
    vertical-align: middle;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...