Навбар центрируется не по центру страницы а между логотипом и кнопкой. Бесит

Рейтинг: 46.8% · 12 голосов
Frontend и backend разработка: JavaScript, TypeScript, React, Next.js, Vue, Node.js, PHP, REST и GraphQL API, вёрстка HTML/CSS и современные веб-приложения.
Ответить
Аватара пользователя
egor9725
Сообщения: 27
Зарегистрирован: Вс май 10, 2026 9:17 pm

Навбар центрируется не по центру страницы а между логотипом и кнопкой. Бесит

Сообщение egor9725 »

Делаю шапку через flex justify-content space-between, по краям логотип и кнопка входа, в центре меню. Логотип шире кнопки и меню съезжает влево на пару пикселей. Как сделать чтобы центр был именно центром страницы?
👍 ❤️ 🔥 😄 🤔
✔ Лучший ответ сформирован автоматически — flowgo4491
Классическое решение — три колонки через grid: `grid-template-columns: 1fr auto 1fr`. Логотип в первой, меню во второй (auto — по контенту), кнопка в третьей. Меню всегда математически по центру страницы независимо от ширины крайних элементов. Никакого position absolute, работает с любыми размерами логотипа и кнопки.
Перейти к ответу →
Аватара пользователя
ruslan_pro
Сообщения: 24
Зарегистрирован: Чт май 14, 2026 3:04 am

Re: Навбар центрируется не по центру страницы а между логотипом и кнопкой. Бесит

Сообщение ruslan_pro »

Это известная боль space-between. Средняя группа центрируется между соседями, а не относительно вьюпорта. Возьми grid с тремя колонками 1fr auto 1fr.
👍4 ❤️ 🔥3 😄 🤔
Аватара пользователя
denis6377
Сообщения: 14
Зарегистрирован: Ср май 13, 2026 1:35 am

Re: Навбар центрируется не по центру страницы а между логотипом и кнопкой. Бесит

Сообщение denis6377 »

А меню в среднюю колонку и justify-self center? Сейчас попробую.
👍 ❤️ 🔥1 😄 🤔1
Аватара пользователя
nullgit8572
Сообщения: 3
Зарегистрирован: Пт май 22, 2026 5:13 am

Re: Навбар центрируется не по центру страницы а между логотипом и кнопкой. Бесит

Сообщение nullgit8572 »

Именно. grid-template-columns: 1fr auto 1fr, меню в центральную, justify-self: center. Теперь оно всегда строго по центру независимо от ширины логотипа.
👍1 ❤️1 🔥3 😄3 🤔2
Аватара пользователя
stas_nova82
Сообщения: 2
Зарегистрирован: Вс май 17, 2026 9:33 pm

Re: Навбар центрируется не по центру страницы а между логотипом и кнопкой. Бесит

Сообщение stas_nova82 »

Правило на 2026: grid для скелета страницы, flex для содержимого внутри блоков. Половина ваших мучений с центрированием это попытка решить grid-задачу через flex.
👍 ❤️ 🔥 😄 🤔
Аватара пользователя
matvey_web7
Сообщения: 1
Зарегистрирован: Ср май 27, 2026 5:19 pm

Re: Навбар центрируется не по центру страницы а между логотипом и кнопкой. Бесит

Сообщение matvey_web7 »

Заработало с первого раза, красота. Спасибо, а то я уже хотел абсолютным позиционированием костылить.
👍4 ❤️1 🔥5 😄 🤔2
Аватара пользователя
flowgo4491
Сообщения: 12
Зарегистрирован: Вс май 10, 2026 8:32 pm

Re: Навбар центрируется не по центру страницы а между логотипом и кнопкой. Бесит

Сообщение flowgo4491 »

✔ Лучший ответ — сформирован автоматически
Классическое решение — три колонки через grid: `grid-template-columns: 1fr auto 1fr`. Логотип в первой, меню во второй (auto — по контенту), кнопка в третьей. Меню всегда математически по центру страницы независимо от ширины крайних элементов. Никакого position absolute, работает с любыми размерами логотипа и кнопки.
👍1 ❤️ 🔥2 😄 🤔2
Аватара пользователя
savva_io
Сообщения: 41
Зарегистрирован: Вс май 10, 2026 9:03 pm

Re: Навбар центрируется не по центру страницы а между логотипом и кнопкой. Бесит

Сообщение savva_io »

Можно и через flexbox если grid не хочется: оберни логотип и кнопку входа в div с `flex: 1`, логотип justify-content: flex-start, кнопка justify-content: flex-end. Меню посередине без flex-grow. Но grid-вариант чище — меньше вложенных обёрток.
👍2 ❤️1 🔥 😄1 🤔
Ответить
Поделиться темой: ✈ Telegram VK
  • Похожие темы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость