Ключові висновки
- Центрування елементів у веб-макетах завжди було проблемою, але сучасний CSS тепер підтримує просте центральне позиціонування.
- Flexbox — це найпоширеніший метод центрування елементів, що забезпечує гнучку модель макета, яка дозволяє легко вирівнювати.
- Сітка CSS і позиціонування CSS також є ефективними методами центрування елементів на веб-сторінці, пропонуючи точний контроль над макетом і вирівнюванням.
Центрування елемента у веб-макеті – це проблема, яка завжди розчаровувала дизайнерів. Це не завжди було легко зробити, але багато дизайнів вимагають центрального розташування. На щастя, сучасний CSS тепер добре підтримує центрування.
Дізнайтеся, як відцентрувати div горизонтально та вертикально за допомогою Flexbox, CSS Grid і позиціонування CSS.
Простий HTML-файл для практики центрування
Усі наведені нижче приклади використовують мінімальний HTML-документ для демонстрації центрування за допомогою CSS. Використовуйте цю розмітку та змінюйте CSS відповідно до кожного розділу, щоб побачити, як поводяться ці властивості.
<!DOCTYPE html>
<html>
<head>
<style>
div { width: 100px; height: 100px; }
body { height: calc(100vh - 16px); }
</style>
</head>
<body>
<div></div>
</body>
</html>
Використання Flexbox для центрування елемента Div
Вам потрібно буде зрозуміти основи Flexbox, перш ніж використовувати його для центрування елемента div. На щастя, Flexbox дотримується простого підходу, тому він є найпоширенішим. Він забезпечує гнучку модель макета, яка дозволяє легко вирівнювати та розподіляти простір між елементами в контейнері, що робить його ідеальним для центрування елементів.
Використовуйте наступний CSS, щоб отримати центрування за допомогою Flexbox.
body {
display: flex;
}
body {
justify-content: center;
align-items: center;
}
div { background-color: red; }
Переглядаючи результат у Google Chrome DevTools, ви можете побачити, як дві властивості контролюють вирівнювання вздовж кожної осі:
Використання сітки CSS для центрування елемента Div
Використання CSS Grid для центрування елемента є ще одним ефективним методом, який пропонує точний контроль над макетом і вирівнюванням.
body {
display: grid;
}
body {
grid-template-columns: 1fr;
grid-template-rows: 1fr;
}
body {
place-items: center;
}
div {
background-color: blue;
}
У цьому випадку одна властивість керує центральним розташуванням div на вашій сторінці:
Використання позиціонування CSS для центрування елемента Div
Щоб використовувати властивість позиції CSS для центрування div, вам також потрібно зрозуміти, як працюють перетворення CSS із переходами. Ось покрокова інструкція з прикладом.
body {
position: relative;
}
div {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background-color: green;
}
Трансформація translate(-50%, -50%) переміщує div ліворуч і вгору на половину його ширини та половину висоти.
Цей метод працює так, що спочатку центрується верхній кут елемента, а потім переміщується відносно на половину ширини та половину висоти.
Flexbox, CSS Grid і CSS позиціонування — це потужні інструменти, які можна використовувати для центрування елементів на веб-сторінці. За допомогою Flexbox ви можете центрувати як горизонтально, так і вертикально за допомогою лише кількох рядків коду. Сітка CSS забезпечує потужне двовимірне вирівнювання, і ви можете використовувати позиціонування CSS, щоб центрувати елемент відносно його батьківського контейнера.
За допомогою цих методів ви можете гарантувати, що ваші веб-сторінки виглядатимуть чисто та професійно.