This is about the Display property.
You should make it entirely with divs or spans, and use CSS
properties to control them.
- Inline elements are text, like
<a>. They sit on the same line and can be thought of in things in text. They can have left/right margins but not top or bottom, can't have a set width height, and can't float. I like to think of them as "layout-less".
- Block elements like
<p> fill the whole line by default, and stack on top of each other. They have margins, padding, and floats.
- Inline-blocks have margins and padding like blocks do, but sit on the same line like inline elements.
You'll use all three to build the above.