So, if the child in flexible knows its height (in Column and width in Row) then it will take the mentioned height. But if the height is not mentioned then it will take the remaining height and it will act like an expanded widget. And expanded widget will always take remaining height (or width) .