Выравнивание картинок и кнопок при помощи css-свойства text-align

Свойство text-align в CSS, хотя и предназначено для выравнивания текста, может также использоваться для управления горизонтальным выравниванием встроенных (inline) или встроенно-блочных (inline-block) элементов, включая изображения, ссылки, кнопки и другие элементы внутри блочного контейнера. Это свойство не влияет на блочные элементы (block), такие как div или p, напрямую, но эффективно для элементов с display: inline или display: inline-block.

Принцип работы

Когда вы применяете text-align к блочному элементу, это свойство влияет на содержимое этого блока, выравнивая встроенные и встроенно-блочные элементы в соответствии с заданным значением (left, right, center, justify). Это происходит потому, что эти элементы воспринимаются как часть «текстового потока» внутри их контейнера.

Примеры реализации

Выравнивание изображений

Допустим, у вас есть блок div, внутри которого размещено несколько изображений как встроенные элементы, и вы хотите центрировать их горизонтально.

<div class="images">
<img src="image1.jpg" alt="Image 1">
<img src="image2.jpg" alt="Image 2">
<img src="image3.jpg" alt="Image 3">
</div>
.images {
text-align: center;
}

В этом примере все изображения внутри .images будут центрированы горизонтально.

Выравнивание кнопок

Представьте, что у вас есть форма с несколькими кнопками, которые должны быть выравнены по правому краю контейнера.

<div class="form-actions">
<button type="submit">Submit</button>
<button type="reset">Reset</button>
</div>
.form-actions {
text-align: right;
}

Кнопки внутри .form-actions будут выровнены по правому краю.

Важные соображения

  • text-align: justify; не всегда подходит для не-текстовых элементов, так как его основное назначение — распределение текста по ширине контейнера с добавлением пробелов между словами. Это может привести к нежелательным эффектам при применении к изображениям или кнопкам.
  • Для выравнивания блочных элементов используйте другие свойства, такие как margin с автоматическими значениями для горизонтального выравнивания или Flexbox и Grid для более сложных макетов.
  • В отзывчивом дизайне может потребоваться изменять выравнивание элементов в зависимости от размера экрана с помощью медиазапросов.

Использование text-align для выравнивания не-текстовых элементов демонстрирует гибкость CSS и предоставляет разработчикам простой инструмент для управления расположением содержимого внутри блочных контейнеров.

Юрий Савченко

Привет, моё имя Юрий, и мне 39 лет. Родом из Грозного. Сейчас живу и работаю в Краснодаре, в одном из крупнейших маркетинговых агентств города. Я являюсь основным автором статей на проекте Code4web.

В основном пишу в такие категории как Javascript, HTML и Офтопик.

В свободное время я — лютый геймер. Обожаю игры серии Dark Souls и RPG. Это такой мой способ расслабиться и отдохнуть от повседневной рутины.

Code4Web