Три способа выравнивания html картинки по центру

В этой статье мы разберем три простых техники, с помощью которых мы можем выровнять html картинки по центру экрана. Для урока я создал простую html страничку с базовой разметкой и пустой css файл.

Нам понадобится div обертка и изображение, которое мы возьмем на сайте placehold.it. Первое, что мы сделаем это создадим div с классом image-wrap, и в него добавим изображение.

<div class="image-wrap">
   <img src="http://placehold.it/350x150" >
</div>





Дальше пропишем базовые стили для класса image-wrap. Это будет высота и ширина, немного больше чем картинка. И сплошную рамку размером 1px.

.image-wrap {
  width: 500px;
  height: 300px;
  border: 1px solid gray;
}

Результат ниже на скриншоте.

Результат созданной страницы.

Способ 1. Добавляем картинке класс .image-center.

Способ заключается в том чтобы картинке добавить свойство display со значением block и так же правило margin:auto. Возможно вам уже знакома эта техника и вы ее использовали для центрирования div. Но так как изображение является строчным элементом нам необходимо добавить display:block.

<div class="image-wrap">
   <img src="http://placehold.it/350x150" class="image-center">
</div>
.image-center {
  display:block;
  margin: auto;
}

На скриншоте вы можете увидеть, что изображение отцентрировано.

Центрирование картинки с помощью margin : auto

Способ 2. Копируем html код который есть на данный момент, и диву image-wrap добавим еще класс image-align. А класс .image-center удалим.

Эта техника заключается в том, чтобы содержимое дива отцентрировать с помощью text-align : center. Стоить помнить, если мы добавим текст в див он тоже будет центрироваться вместе с картинкой.

<div class="image-wrap image-align">
  <img src="http://placehold.it/350x150">
</div>
.image-align {
  text-align: center;
}

Смотрим результат.

Центрируем картинку в диве как текст. Свойство text-align:center

Способ 3. Техника основывается на свойстве display : flex. Берем код html который использовали в способе 2 и меняем в нем класс image-align на image-flex.

<div class="image-wrap image-flex" >
  <img src="http://placehold.it/350x150" >
</div>

Классу image-flex в css пишем:

.image-flex {
  display:flex;
  align-items: center;
  justify-content: center;
}

Свойство align-items центрирует изображение по вертикали, justify-content по горизонтали. В этом есть главное отличие и плюс от предыдущих способов, мы можем выравнивать картинку по двум осям.

Картинка по центру div с помощью flex.

Теперь у вас точно не возникнут вопросы как отцентрировать изображение по центру div. Если у вас есть, что спросить или дополнить, комментарии приветствуются. До встречи в следующих статьях.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>