Elementos en BLOQUE vs EN LÍNEA

1. Elementos en BLOQUE

Ocupan todo el ancho disponible y empiezan en una línea nueva. Ejemplos: <div>, <p>, <h1>, <ul>, <li>

Soy un DIV (bloque)
Soy otro DIV (bloque)

Soy un P (bloque)

2. Elementos EN LÍNEA

Solo ocupan el ancho de su contenido y se colocan uno al lado del otro. Ejemplos: <span>, <a>, <strong>, <em>

Span 1 Span 2 Enlace Strong

3. Comparación directa

DIV (bloque)
SPAN (línea) SPAN (línea)
DIV (bloque)

4. inline-block (híbrido)

Se colocan en línea como los inline, pero aceptan width y height como los bloque.

Caja 1
Caja 2
Caja 3