Geht diese Methode mit flex?
Ja, du musst es nur richtig verwenden. Dein Beispiel zeigt leider nicht den flexbox-Versuch, also kann ich auch nicht sagen, was du falsch machst.
Eine grafisch einprägsame Anleitung findest du hier.
Aber, warum möchtest du display: flex benutzen? Nur ein paar Bemrkungen: das ist für deinen Anwendungsfall nicht nötig und auch nicht sauberer als das Ganze ohne flexbox zu realisieren. Auch über die Browserunterstützung solltest du dir Gedanken machen, wenn's auch der IE checken soll.
lg