Гид по технологиям

Как центрировать текст в CSS

5 min read Frontend Обновлено 09 Apr 2026
Центрирование текста в CSS — быстрое руководство
Центрирование текста в CSS — быстрое руководство

Что такое свойство text-align

Свойство text-align управляет горизонтальным выравниванием строк внутри блока. Значения чаще всего встречаются такие:

  • left — выравнивание влево (по умолчанию для LTR-языков)
  • right — выравнивание вправо
  • center — центрирование строк по горизонтали
  • justify — выравнивание по ширине, равномерное распределение пробелов

Коротко: text-align задаёт, где расположится строка внутри своего блочного контейнера.

Ноутбук с открытым CSS-кодом

Когда центрирование текста нужно и когда нет

  • Заголовки, короткие подзаголовки и рекламные блоки часто центрируют для акцента.
  • Длинные абзацы обычно лучше оставлять выровненными по левому краю для читабельности на LTR-языках.
  • Для RTL-языков (например, арабский, иврит) по умолчанию применяется выравнивание вправо; учитывайте direction у документа.

Важно: text-align действует на содержимое строчно-блочных (inline/inline-block) элементов внутри блока. Оно не превращает блочные элементы (например, div) в центрированные по отношению к странице — для этого используют другие приёмы.

Пример простой HTML-страницы

  
  
  
  
  
  
  
     
  
   Center Alignment  
  
  
  
  
  
  
   

Heading

Lorem ipsum, dolor sit amet consectetur adipisicing

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum distinctio eum ex, repellat beatae in quasi eligendi enim dolorem ipsam. Ab necessitatibus sunt commodi ad fugit soluta provident dolorem distinctio? Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum distinctio eum ex, repellat beatae in quasi eligendi enim dolorem ipsam. Ab necessitatibus sunt commodi ad fugit soluta provident dolorem distinctio?

Heading

Lorem ipsum, dolor sit amet consectetur adipisicing

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum distinctio eum ex, repellat beatae in quasi eligendi enim dolorem ipsam. Ab necessitatibus sunt commodi ad fugit soluta provident dolorem distinctio? Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum distinctio eum ex, repellat beatae in quasi eligendi enim dolorem ipsam. Ab necessitatibus sunt commodi ad fugit soluta provident dolorem distinctio?

Это страница по умолчанию: браузер выведет все строки, выровненные влево для LTR-языков.

Браузерный вывод HTML по умолчанию, текст выровнен влево

Как центрировать весь текст на странице

Чтобы центрировать весь текст внутри родительского контейнера, примените text-align: center к этому контейнеру. Обычно контейнер — это

с классом container.

Центрирование всего текста

      .container{  
           text-align: center;  
       }  

Результат: все заголовки, абзацы и инлайновые элементы внутри .container будут центрированы по горизонтали.

Веб-страница с центровкой всех элементов текста

Заметка: иногда абзацы читаются хуже, если их центрировать. Для длинного текста лучше сохранять выравнивание по краю.

Как центрировать только заголовки или отдельные элементы

Если нужно центрировать не весь контент, а только определённые теги, используйте селектор по тегу, классу или id.

Центрирование заголовков h1 и h3

   h1, h3{  
           text-align: center;  
       }  

Это центрирует только h1 и h3, остальные элементы остаются с дефолтным выравниванием.

Веб-страница с заголовками, центрированными, абзацы слева

Как центрировать сам контейнер на странице

Чтобы ограничить ширину контента и разместить контейнер по центру страницы, используйте max-width и margin: auto.

Пример центровки блока

  .container{  
           max-width: 920px;  
           margin: auto;  
       }  

Пояснение:

  • max-width задаёт максимальную ширину контейнера. Это делает макет адаптивным: на узком экране контейнер сузится, а на широком — останется в пределах указанной максимальной ширины.
  • margin: auto по горизонтали автоматически рассчитывает одинаковые отступы слева и справа, что помещает блок в центр.

Контейнер div по центру страницы с ограниченной шириной

Как работает свойство margin

  • Один аргумент: margin: X — задаёт отступ одинаково со всех сторон.
  • Два аргумента: margin: vertical horizontal — первый для верх/низ, второй для лево/право.
  • Три и четыре аргумента дают более точный контроль (top, right/left, bottom и т.д.).

Если использовать margin: auto, браузер распределяет доступное пространство равномерно, что удобно для центрирования блока по горизонтали.

Когда text-align не сработает и как действовать (ошибки и контрпример)

  • Контрпример: если вы пытаетесь центрировать блочный элемент (например, сам div) с помощью text-align на нём — это не сработает. text-align влияет на inline-содержимое внутри блока, а не на сам блочный элемент.
  • Если элемент display: inline-block; вы можете центрировать его внутри родителя с помощью text-align: center у родителя.
  • Для центрирования блочного элемента используйте margin: 0 auto (при заданной ширине/макс-ширине) или Flexbox/Grid.

Альтернативные подходы к центрированию

  1. Flexbox — простой способ горизонтального и вертикального центрирования.
.container {
  display: flex;
  justify-content: center; /* горизонтальное */
  align-items: center;     /* вертикальное */
  min-height: 200px;
}
  1. Grid — мощный инструмент для двухмерной верстки.
.container {
  display: grid;
  place-items: center; /* центрирует по горизонтали и вертикали */
}
  1. line-height — быстрый трюк для однострочных элементов (заголовки/кнопки), но ненадёжен для многострочных абзацев.
.single-line {
  height: 40px;
  line-height: 40px; /* вертикальное выравнивание текста в одной строке */
  text-align: center;
}

Руководство-решение: когда использовать какой метод

  • Для центрации импортантных заголовков и коротких блоков используйте text-align: center.
  • Для центрирования контейнера на странице используйте max-width и margin: auto.
  • Для вертикального центирования или сложных макетов используйте Flexbox или Grid.
  • Для inline-block элементов центрируйте их через text-align у родителя.

Краткая шпаргалка (cheat sheet)

  • Центр текста внутри блока: parent { text-align: center; }
  • Центр блочного элемента по ширине: elem { width: 600px; margin: 0 auto; }
  • Горизонтальное и вертикальное центрирование с Flexbox: parent { display:flex; justify-content:center; align-items:center; }
  • Центрирование обеих осей с Grid: parent { display:grid; place-items:center; }

Проверка качества и роли в команде (чек-листы)

Для фронтенд-разработчика:

  • Установил text-align там, где нужен визуальный акцент.
  • Проверил responsive: блоки не ломаются на небольших экранах.
  • Не использовал text-align для центрирования блочных контейнеров.

Для дизайнера:

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

Для QA:

  • Проверил выравнивание в Chrome, Firefox, Safari.
  • Проверил поведение при RTL и уменьшении ширины окна.

Краткий глоссарий

  • Блочный элемент — элемент, занимающий всю доступную ширину и начинающийся с новой строки (например, div).
  • Inline-элемент — элемент, занимающий только ширину своего содержимого, располагается в строке (например, span).
  • Flexbox — модель компоновки для однострочных/одностолбцовых макетов.
  • Grid — модель компоновки для двухмерных макетов (ряды + колонки).

Совместимость и доступность

  • text-align поддерживается всеми современными браузерами и старыми версиями IE.
  • При работе с RTL (right-to-left) используйте атрибут dir на html или body: .
  • Для доступности убедитесь, что центрирование не ухудшает читаемость; следите за контрастом и размером шрифта.

Что можно сделать дальше

  • Изучите CSS Grid для более точного расположения блоков и центровки компонентов.
  • Попробуйте комбинировать max-width, padding и margin для создания «контейнерной» сетки, пригодной для разных экранов.

Итог и ключевые выводы

  • text-align управляет горизонтальным выравниванием строк внутри блока.
  • Для центрирования контейнера по странице используйте max-width и margin: auto.
  • Для вертикального центрирования и сложной компоновки предпочтительнее Flexbox или Grid.

Важно: всегда проверяйте читабельность после центрирования — не всё, что визуально красиво, удобочитаемо.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро