Як центрувати елемент по вертикалі за допомогою CSS (вертикальне вирівнювання)
Last updated: 21.02.2026
Views: 82
Існує декілька способів вертикального вирівнювання. У різних ситуаціях підходять різні способи. Розглянемо деякі з них.
1. Використання Flexbox
Найпростіший і поширений спосіб:
.container {
display: flex;
align-items: center; /* Centers vertically */
justify-content: center; /* Optional: Centers horizontally */
height: 100vh; /* Full viewport height, if needed. Or set your own height */
}
2. Використання Grid
CSS Grid також робить вертикальне центрування просто:
.container {
display: grid;
place-items: center; /* Centers both vertically and horizontally */
height: 100vh; /* Full viewport height, if needed. Or set your own height */
}
Разом з Grid ви також можете використовувати align-items: center замість place-items: center
3. Використання position та transform
Для ситуацій, коли Flexbox або Grid не підходять:
.element {
position: absolute;
top: 50%;
transform: translateY(-50%);
}
Цей метод центрує елемент відносно блоку, що його містить.
4. Використання line-height (однорядковий текст)
Якщо ви центруєте однорядковий текст:
.container {
height: 100px; /* Example height */
line-height: 100px; /* Match the height */
text-align: center; /* Optional: Centers horizontally */
}
Це працює лише для однорядкових текстових елементів.
5. Використання table-cell
Для сумісності зі старими браузерами:
.container {
display: table;
height: 100vh; /* Full viewport height, if needed. Or set your own height */
width: 100%; /* Optional */
}
.element {
display: table-cell;
vertical-align: middle;
text-align: center; /* Optional: Centers horizontally */
}
Який метод використовувати?
- Використовуйте
FlexboxабоGridдля сучасних макетів. - Використовуйте
position + transformдля конкретних сценаріїв або абсолютного позиціонування. - Використовуйте
line-heightдля центрування однорядкового тексту.
Схожі записи:
-
Проблема масштабування зображень у Outlook
Коли я верстав HTML листи для електронної пошти, я зіткнувся з тим, що в настільному Outlook (виявляється, ним хтось ще користується) картинки відображалися в дивному мас...
-
Як сховати скроллбар за допомогою CSS
Існує декілька способів приховати скроллбар (смугу прокрутки) за допомогою CSS, залежно від того, чи хочете ви повністю видалити прокручування чи просто приховати візуаль...
-
Як створити випадаюче меню, використовуючи лише HTML та CSS
В одній з попередніх статей ми розглядали створення випадаючого меню за допомогою JavaScript (jQuery). У цій статті ми розглянемо, як створити випадаюче меню, використову...
Залишити відповідь