Dunno2018
@Dunno2018

Как сделать 3 колонки с помощью display: flex?

Здравствуйте.
Код - нужно, чтобы блоки вставали по 3 в ряд. Но не понимаю почему 3-й блок переносится
  • Вопрос задан
  • 59 просмотров
Решения вопроса 1
delphinpro
@delphinpro Куратор тега CSS
frontend developer
1. Нужно изменить либо формулы, либо бокс-модель. Второе проще box-sizing: border-box;
2. У вас три колонки, а значит два промежутка по 30px: width: calc((100% - 30px * 2) / 3);
3. В жопу марджины. Для указания промежутков есть специальное свойство gap: 20px 30px;

Итог:
.grid {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 30px;
}

.item {
  box-sizing: border-box;
  width: calc((100% - 30px * 2) / 3);
  text-decoration: none;
  color: #000;
  padding: 20px;
  border: 1px solid #000;
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы