I’m not sure I understand the question, but here goes…
Why does what happen?
I’m guessing that you are talking about the item alignment, which is making the span stretch to the full height of the div. The default value for align-items is stretch, so if you want something else, you must state your preferred setting on the flex object, Eg align-items:flex-start. But this will affect all flex children, to affect only one child, use align-self on that child.