Перекрытие элементов CSS-сетки - PullRequest
0 голосов
/ 30 октября 2019

Я хотел бы использовать CSS-сетку, чтобы расположить некоторые элементы, которые, когда они находятся в одном столбце и перекрывают друг друга, дают друг другу некоторое пространство. Вот изображение, чтобы проиллюстрировать, чего я хотел бы достичь:

enter image description here

<div id="container">
 <div id="yoga"></div>
 <div id="samurai"></div>
 <div id="lunch"></div>
</div>
#container {
  width: 600px;
  height: 600px;
  background-color: black;

  display: grid;
}

#yoga {
  background-color: red;

  grid-column-start: 2;
  grid-row-start: 3;
  grid-row-end: 7;
}

#samurai {
  background-color: green;

  grid-column-start: 1;
  grid-row-start: 1;
  grid-row-end: 4;
}

#lunch {
  background-color: blue;

  grid-column-start: 2;
  grid-row-start: 2;
  grid-row-end: 5;
}

И codepen , которыйне может достичь этого здесь. Возможно ли то, что я пытаюсь сделать с помощью CSS Grid? Единственный способ, которым я могу думать, это разделить столбцы на дополнительные столбцы, что становится непомерно большим, если у меня слишком много элементов, разделяющих один столбец.

Спасибо!

1 Ответ

0 голосов
/ 30 октября 2019

у вас неправильный начальный столбец для йоги, и вы должны использовать grid-template-columns: n контейнер, чтобы задать ширину и расстояние между столбцами для пробелов. используйте как минимум 1 дробь, а не%, чтобы ширина столбца оставалась в пределах предоставленного пространства.

#container {
grid-template-columns: 50% 1fr 1fr
grid-column-gap: 10px

}
#yoga {
grid-column-start: 3;
}
...