Я изучаю веревки в CSS, и у меня возникают проблемы с использованием flexbox в сочетании с абсолютными дочерними элементами и перекрывающимся div.Основываясь на онлайн-вопросах, я вижу, что это может быть проблема, я просто не вижу способа исправить то, с чем я сталкиваюсь.
Я уже задавал вопрос ранее, и решение работает нормально: Как сделать так, чтобы один div всегда был в нижней части представления, и чтобы изменить размер верхнего div на основе нижнего div?
В основном верхний div (Div A) заполнял оставшиесяпространство порта просмотра, которое нижний div не заполнял динамически.
![enter image description here](https://i.stack.imgur.com/UDBuI.png)
Однако я сталкиваюсь с проблемой, потому что мой divA содержит дочерние элементы, которые должны перекрываться и используют position: absolute.
До того, как разобраться с flex, я определил свой верхний div: (извините, пожалуйста, за названия и прочее. Я сделал их фиктивные имена для примера).
#divA {
width: 100vw;
height: 70vh;
position: relative;
}
#innerContainer {
position: absolute;
width: inherit;
height: inherit;
}
#centeredIcon {
width: 2em;
height: 3em;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
position: absolute;
z-index: 1;
}
И элементы были такими:
<div id="divA">
<div id="innerContainer"/>
<img id="centeredIcon" src="..."/>
</div>
<div id="divB"> ... </div>
При попытке преобразовать внешний контейнер для Div A в использование flex: 1 0 auto;
и поместить divA и divB в div-обертку, мой innerContainer из divA в значительной степени исчезает (размер0).
.wrapper {
height: 100vh;
display: flex;
flex-direction: column;
}
Есть предложения о том, как заставить это работать?