I have a flexbox with 2 rows. In the second row I have a flexbox with 2 columns and the second column becomes scrollable when the content overflows. However, when it becomes scrollable, the document becomes scrollable also (a tiny bit - as if the first row's height is added to the document's height).
I have set 100% heights to all parents and debugged a lot but couldn't fix this. I can't see what's going wrong.
I duplicated the issue in this Js Bin: https://jsbin.com/lesoledoqo/1/edit?html,output
Any ideas?
Code:
<html style="height: 100%;">
<body style="height: 100%; padding: 0; margin: 0;">
<div style="display: flex; flex-direction: column; height: 100%;">
<div style=" background-color: gray">
Content 1
</div>
<div style="display: flex; background-color: green; height: 100%;">
<div style="background-color: blue;">
Content 2.1
</div>
<div style="background-color: yellow; height: 100%; overflow-y: auto;">
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2<br />
Content 2.2
</div>
</div>
</div>
</body>
</html>