For starters, you don’t need floats. That is the whole point of Flexboxes. So you don’t have to use floats. Try getting rid of the float declarations and playing around some more….
Also, keep in mind that every set of flex items needs a flex container. It’s not ridiculous to see something like:
<div class="flex-container"> <div class="flex-item"> <div class="flex-container"> </div> </div> </div>
Nesting flex boxes is how you keep consistency across browsers but it can get really confusing really quick. Especially when you get like 8 levels deep.
You also are probably missing LOTS of vendor prefixes to get it working properly across all browsers.
... read the whole story at css-tricks.com.