Hallo,
Kann man dann nicht ein anderes Element wählen, welches kein Blockelement ist, sodass es horizontal 'aufhört'?
Ein anderes Element zu wählen wäre der falsche Ansatz. Wir wollen ja unser Markup nicht mehr ändern. Ich habe nicht umsonst CSS hinter Blockelement geschrieben. Es geht hier um die CSS-Eigenschaft display:block, die für das Verhalten verantwortlich ist. Du kannst ja mal für die ganzen divs und das p darin die Eigenschaft auf display:inline ändern. Aber vielleicht solltest du auch über das vergeben einer festen Breite (vorzugsweise in % oder em) nachdenken.
Gruss,
OhneName