Basic document flow
I am a basic block level element. My adjacent block level elements sit on new lines below me.
By default we span 100% of the width of our parent element, and we are as tall as our content.
Our total width and height is our content + padding + border width/height.
We are separated by our margins. Because of margin collapsing, we are separated by the width of one of our margins, not both.
Inline elements like this one and this one sit on the same line as one another,
and adjacent text nodes, if there is space on the same line.
Overflowing inline elements will wrap onto a new line if possible (like this one containing text),
or just go on to a new line if not, much like this image will do:
One morning, when Gregor Samsa woke from troubled dreams, he found himself transformed in his bed into a horrible vermin.
He lay on his armour-like back, and if he lifted his head a little he could see his brown belly, slightly domed and divided by arches into stiff sections.