Block formatting context (BFC) establishes a sub-layout of its children.

Commonly, use overflow != visible. Less-supported but no side effects: display: flow-root

A parent with block formatting context encapsulates and isolates its children.

normal
This is some long floated content that takes up space.
Not BFC: children can "poke out".
overflow: auto
This is some long floated content that takes up space.
Block formatting context: div expands to contain children.
display: flow-root
This is some long floated content that takes up space.
Block formatting context: div expands to contain children.

A sibling div with BFC does not wrap around a float.

This is a floater.
Doggo ipsum shibe. Corgo sub woofer heck heckin stop it fren big ol pupper heckin good boys, very jealous pupper puggorino floofs wow such tempt. Vvv borking doggo tungg floofs fat boi sub woofer wow such tempt porgo, long bois long doggo clouds vvv puggorino shoob.
This is a floater.
Doggo ipsum shibe. Corgo sub woofer heck heckin stop it fren big ol pupper heckin good boys, very jealous pupper puggorino floofs wow such tempt. Vvv borking doggo tungg floofs fat boi sub woofer wow such tempt porgo, long bois long doggo clouds vvv puggorino shoob.