Как растянуть блок на всю высоту прокрутки, если родитель зафиксирован на 100vh и имеет overflow: auto?

Чтобы растянуть блок на всю высоту прокрутки внутри родительского элемента с зафиксированной высотой 100vh и свойством overflow: auto, вам потребуется использовать некоторые дополнительные стили.

Первым шагом я рекомендую установить высоту блоку на 100% в отношении родительского элемента. Это можно сделать следующим образом:

.parent {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  overflow: auto;
}

.child {
  height: 100%;
}

Затем, для того чтобы растянуть блок на всю высоту прокрутки внутри родительского элемента, вы можете использовать "псевдоэлемент" (::after или ::before) и задать ему высоту 100%, а также установить отступы на противоположных сторонах (верх и низ) для обеспечения прокрутки контента внутри блока. Вот пример:

.child::after {
  content: '';
  display: block;
  height: 100%;
  margin-top: -100vh;
}

Обратите внимание, что вам может потребоваться добавить дополнительные стили, такие как отступы, цвет фона и т.д., чтобы правильно отобразить растянутый блок.

Таким образом, с помощью вышеописанных стилей вы сможете растянуть блок на всю высоту прокрутки внутри родительского элемента с зафиксированной высотой 100vh и свойством overflow: auto.