@QnaTwitt

Как правильно написать grid для таких элементов?

Подскажите как правильно написать адаптивно grid для таких элементов, учитывая что их может быть не три, а 2 или 5...

635117b8d1e0f981756997.jpeg
635117c04e90f748757753.jpeg
635117ba3a2cd483478801.jpeg
635117bd58c55792985463.jpeg

Пробовал сделать как-то так....

display: grid;
    grid-template-columns: repeat(3, minmax(variables.rem(152px), min-content));
    grid-column-gap: variables.rem(6px);
    grid-row-gap: variables.rem(6px);
  • Вопрос задан
  • 49 просмотров
Пригласить эксперта
Ответы на вопрос 2
delphinpro
@delphinpro
frontend developer
.block {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
}
Ответ написан
yulich81
@yulich81
Люблю CSS
QnaTwitt, если допустимо использовать flex (судя по комментариям), то может быть такое решение.
На мобильных устройствах за счет flex-wrap будет перенос кнопок на новую строку. Если кнопок будет больше 3-х этого все равно не избежать на маленьких экранах.

<div class="flex">
  <button class="btn btn--primary">Log in</button>
  <button class="btn btn--outline">Registration</button>
  <button class="btn btn--outline">Forgot password</button>
  <button class="btn btn--outline">Forgot password</button>
</div>


*{
  box-sizing: border-box;
}

.flex {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}

.btn {
  border: none;
  background-color: transparent;
  font-family: inherit;
  padding: 10px 20px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
 
}

.btn--primary {
  color: #fff;
  background-color: #000;
}

.btn--outline {
  color: #000;
  background-color: #fff;
  border: 1px solid #000;
}
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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