tl; dr: you need min-height:0 in your rule .level-0-row2 . ( Here is the code with this fix .)
More detailed explanation:
Flex items set a default minimum size based on their childrenβs own size (which does not take into account the "overflow" properties for their descendants / descendants).
Whenever you have an element with overflow: [hidden|scroll|auto] inside the flex element, you need to provide your ancestor element flex min-width:0 (in a horizontal flexible container) or min-height:0 (in a vertical flex container) to disable this minimum size behavior, otherwise the flex element will not decrease less than the size of the minimum content of the child.
For more information on sites bitten by this, see https://bugzilla.mozilla.org/show_bug.cgi?id=1043520 . (Note that this is just a metagug for tracking sites that have been broken into this problem after this spec text has been implemented - this is actually not a bug in Firefox.)
You won't see this in Chrome (at least not in this post), because they have not yet met this minimum size. . (EDIT: Chrome has now performed this minimum size behavior, but they may still incorrectly collapse the minimum sizes to 0 in some cases .)
dholbert Feb 20 '15 at 22:58 2015-02-20 22:58
source share