Главная | Все статьи | Код

Центрирование с CSS

JavaScript Время чтения статьи ~4 минуты 8
Центрирование с CSS главное изображение

Веб-страницы — это инструмент взаимодействия между владельцами сайта и пользователями. Цель каждой страницы — побудить посетителей выполнить целевое действие: кликнуть, перейти, заполнить форму. Именно поэтому так важно правильно выстроить дизайн страницы, разместив все элементы максимально эффектно и эстетично.

Для упорядочивания элементов на веб-странице используется центрирование CSS (CSS center). Рассмотрим основные подходы к центрированию элементов, а также методы с использованием Flexbox и Grid Layout.

Попробуйте себя в Frontend-разработке

Начать с 5 бесплатных уроков

Понимание основ центрирования

Центрирование элементов на веб-странице с помощью CSS (CSS center) помогает сделать интерфейс более удобным и визуально привлекательным. Далеко не все элементы нужно выравнивать именно по центру: так, тексты на веб-странице обычно выравнивают по левому краю, поскольку читаем мы слева направо. Но основные элементы — имиджи, заголовки и прочее — как правило, занимают центральную позицию.

Центрирование может быть как горизонтальным, так и вертикальным, а также одновременно в обоих направлениях. Кроме того, элемент может занимать центральное положение как относительно всей страницы, так и относительно контейнера — например, колонки или блока (абсолютное и относительное центрирование). Это нужно учитывать в структуре страницы, хотя способы центрирования используются одни и те же.

Как выровнять текст по центру с помощью text-align

Для центрирования текстовых элементов в CSS используется свойство text-align. Оно позволяет выравнивать текст внутри его контейнера.

.container {

text-align: center;

}

В этом примере текст внутри контейнера будет выровнен по центру. Это свойство полезно при создании заголовков, кнопок и других элементов, которые содержат небольшой текст (одну-две строчки или несколько слов).

Этот способ центрирования также валиден для других внутриблочных элементов.

Горизонтальное центрирование с margin: auto

Горизонтальное центрирование блочных элементов можно легко достичь с помощью свойства margin: auto. Margin — это отступ между блочным элементом и краем его контейнера. Если отступ одинаковый со всех сторон, элемент будет центрирован относительно контейнера. Автоматически определяемый размер отступа как раз и обеспечивает одинаковые отступы со всех сторон.

.block {

width: 50%;

margin: 0 auto;

}

В этом примере блочный элемент с фиксированной шириной 50% будет выравниваться по центру.

Абсолютное центрирование

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

.container {

position: relative;

}

.centered {

position: absolute;

top: 50%;

left: 50%;

transform: translate(-50%, -50%);

}

В этом примере мы видим, как потомок меняет размер, но не центрирование.

Центрирование с Flexbox

Flexbox — инструмент CSS для центрирования и упорядочивания элементов веб-страницы как по горизонтали, так и по вертикали. Чтобы оперировать элементами, нужно задать атрибут flex свойству display.

display: flex;

После этого к элементам внутри контейнера будут применены все возможности Flexbox, в котором есть две оси координат x и y, что дает возможность распределять элементы и по горизонтали, и по вертикали.

.container {

display: flex;

justify-content: center;

align-items: center;

}

Этот код центрирует все дочерние элементы как по горизонтали, так и по вертикали.

Центрирование с Grid Layout

Flexbox прекрасно подходит для работы со строками и столбцами. Но при использовании Flexbox может оказаться, что он некорректно отображает элементы в одном из браузеров или что функционала недостаточно для поставленной задачи. Тогда на помощь приходит Grid Layout.

Grid Layout — еще один инструмент для упорядочивания элементов страницы. Выбирая между ним и Flexbox, опытные разработчики рекомендуют использовать Grid Layout для общей структуры страницы, а Flexbox — для центрирования внутри контейнеров.

Вот как можно центрировать элементы с помощью Grid Layout:


.container {

display: grid;

place-items: center;

}

Этот код полностью центрирует все дочерние элементы внутри контейнера.

Рекомендуем попробовать

5 бесплатных уроков Frontend

Заключение

Центрирование элементов с помощью CSS (CSS center) — это важный навык, который должен освоить каждый веб-разработчик. Правильное центрирование элементов способствует улучшению восприятия контента пользователями и повышает общее качество веб-страницы.

В этом блоге мы рассмотрели различные методы центрирования, включая text-align, Flexbox, Grid Layout и абсолютное позиционирование. Если вы хотите научиться создавать привлекательные и удобные веб-страницы, зарегистрируйтесь на курс «Frontend-разработчик» от компании Хекслет.

Рекомендуемые программы
профессия
от 25 000 ₸ в месяц
Разработка фронтенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 28 ноября
профессия
от 25 000 ₸ в месяц
Разработка веб-приложений на Django
10 месяцев
с нуля
Старт 28 ноября
профессия
от 14 960 ₸ в месяц
Ручное тестирование веб-приложений
4 месяца
с нуля
Старт 28 ноября
профессия
от 25 000 ₸ в месяц
Разработка приложений на языке Java
10 месяцев
с нуля
Старт 28 ноября
профессия
от 24 542 ₸ в месяц
новый
Сбор, анализ и интерпретация данных
9 месяцев
с нуля
Старт 28 ноября
профессия
от 25 000 ₸ в месяц
Разработка веб-приложений на Laravel
10 месяцев
с нуля
Старт 28 ноября
профессия
от 28 908 ₸ в месяц
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 28 ноября
профессия
от 39 525 ₸ в месяц
Разработка фронтенд- и бэкенд-компонентов для веб-приложений
16 месяцев
с нуля
Старт 28 ноября
профессия
от 25 000 ₸ в месяц
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 28 ноября
профессия
новый
Автоматизированное тестирование веб-приложений на JavaScript
8 месяцев
c опытом
Старт 28 ноября