aliencash
@aliencash
Партизан

Как отцентровать группу резиновых блоков внутри резинового контейнера, если кол-во внутр.блоков может меняться в зависимости от ширины контейнера?

Вот пример:
codepen.io/aliencash/pen/zrzJwo
Попробуйте поменять ширину окна результата и поймете в чем дело. Внутренние блоки (зеленые) прижатые влево выглядят некрасиво. Нужно чтобы были по центру контейнера (розового).
Если можно БЕЗ flex...

PS: Сам решил, вот так должно быть:
codepen.io/aliencash/pen/yeXRXo
Спасибо Денис Инешин, натолкнул на мысль почему не срабатывает text-align
  • Вопрос задан
  • 295 просмотров
Решения вопроса 1
IonDen
@IonDen
JavaScript developer. IonDen.com
Увы так сделать нельзя на CSS.
Если бы блоков было поменьше и они бы занимали не все пространство, то решение очевидно. Text-align: center для их контейнера. Но у вас блоков гораздо больше, они выстроены в одну линию и прилично вылазят за пределы контейнера. Flex тут тоже не поможет. он просто умеет когда надо переносить блоки на новую строку.
По сути ни один блок не может быть шире своего контейнера, если вы не задали ему размер вручную шире.

Ну можно так схитрить: codepen.io/anon/pen/KVqGza

Еще нормальный вариант сделать это на JS:
1. Посчитать кол-во блоков
2. Посчитать их ширину
3. Сложить
4. Результат добавить в with контейнера
5. Контейнеру добавить отрицательный margin-left
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Don_Donald
@Don_Donald
Вот такой пример подойдет?
codepen.io/anon/pen/RrgePO
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы