CSS / grid Анимация растягивания дополнительного элемента?

Есть список элементов, которые зафиксированы по горизонтали. Пример

let item = document.querySelectorAll(".item");

let newItem = document.createElement('div');
newItem.className = "item-new";
newItem.innerText = 'width 75%';

for (let i = 0; i < item.length; i++) {
  item[i].addEventListener("click", function() {
    this.classList.toggle("active");
    this.after(newItem);
  })

}
body {
  margin: 0;
}

.list {
  min-width: 100%;
  display: grid;
  grid-gap: 0 30px;
  grid-auto-columns: calc(25% - 30px);
  grid-auto-flow: column;
}

.item {
  width: 100%;
  background: pink;
  min-height: 100px;
}

.item.active {
  background-color: red;
}

.item-new {
  width: 175%;
  /* Это не работает */
  background-color: red;
  min-height: 100px;
}
<div class="list">
  <div class="item">1</div>
  <div class="item">2</div>
  <div class="item">3</div>
  <div class="item">4</div>
  <div class="item">5</div>
</div>

Как сделать, что б при нажатии на какой-то из элементов списка, после него создавался элемент, который бы занимал 75% от всего доступного пространства. Визуально, как бы пододвигая элементы которые следуют после него. * Нажимая на следующий элемент списка, первый созданный пропадал. Можно ли это как-то заанимировать ? Вроде, как поддержка плавной анимации в grid системе уже есть, но не знаю как реализовать такую в моем случаии


Ответы (0 шт):