TGViewer
Frontend | Вопросы собесов Frontend | Вопросы собесов @easy_javascript_ru · 17.6K subscribers
Post #134 8.17K
Как отцентровать блок по горизонтали и по вертикали ?
Спросят с вероятностью 10%

Центрирование блока по горизонтали и вертикали можно выполнить несколькими способами, в зависимости от контекста и требований к верстке. Вот несколько популярных методов:

1️⃣ Использование Flexbox

Это мощный инструмент для управления макетом, который позволяет легко центрировать элементы.
.parent {
display: flex;
justify-content: center; /* Центрирование по горизонтали /
align-items: center; / Центрирование по вертикали /
height: 100vh; / Высота родительского блока /
}

<div class="parent">
<div class="child">Центрированный блок</div>
</div>


Использование Grid

Также позволяет легко центрировать элементы как по горизонтали, так и по вертикали.
.parent {
display: grid;
place-items: center; / Центрирование по горизонтали и вертикали /
height: 100vh;
}

<div class="parent">
<div class="child">Центрированный блок</div>
</div>


2️⃣ Использование абсолютного позиционирования

Этот метод подходит для центрирования элемента внутри родительского блока с относительным позиционированием.
.parent {
position: relative;
height: 100vh;
}

.child {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

<div class="parent">
<div class="child">Центрированный блок</div>
</div>


3️⃣ Использование свойства margin

Для горизонтального центрирования блочного элемента его можно использовать с автоматическим расчетом слева и справа.
.child {
width: 50%; / Желаемая ширина блока /
margin: 0 auto; / Автоматический отступ слева и справа */
}


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

Выбор метода зависит от конкретных требований к макету и поддержки браузерами. Flexbox и Grid являются современными и предпочтительными способами для создания адаптивных макетов, в то время как абсолютное позиционирование и использование margin могут пригодиться в более специфических ситуациях.

👉 Можно посмотреть Примеры как отвечают люди на этот вопрос, или перейти к Списку всех вопросов на Frontend Developer. Ставь 👍 если нравится контент.

🔐
База собесов | 🔐 База тестовых
  • 👍 44
  • 😁 14
  • ❤ 6
  • 🔥 2
More from @easy_javascript_ru
  1. Oct 17, 2026🤔 Откуда взялся CSS? CSS (Cascading Style Sheets) появился в 1996 году для отделения стил…
  2. Oct 17, 2026🤔 Какие значения будут являться falsy значениями? В JavaScript значения, которые при прив…
  3. Oct 16, 2026🤔 Что такое meta теги? Meta-теги – это специальные HTML-теги, которые содержат метаинформ…
  4. Oct 15, 2026🤔 Какие преимущества у di? Dependency Injection (DI) – это паттерн проектирования, которы…
  5. Oct 14, 2026🤔 Зачем создавались библиотеки react и другие? Библиотеки, такие как React, создавались д…
  6. Oct 13, 2026🤔 Что такое репозиторий? Это хранилище кода, файлов и их истории изменений. Используется…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →