Ответ
В HTML элементы делятся на блочные (block) и строчные (inline):
-
Блочные (
<div>
,<p>
,<h1>
-<h6>
,<section>
):- Занимают всю доступную ширину
- Начинаются с новой строки
- Могут содержать другие блочные и строчные элементы
- Поддерживают все CSS свойства (margin, padding, width, height)
-
Строчные (
<span>
,<a>
,<strong>
,<img>
):- Занимают только необходимую ширину
- Располагаются в строке друг за другом
- Не могут содержать блочные элементы (кроме
<a>
в HTML5) - Вертикальные margin/padding не влияют на поток
<div>Блочный элемент (займет всю ширину)</div>
<span>Строчный элемент</span><span>Рядом в строке</span>
Также есть inline-block (display: inline-block
) - гибрид: элементы в строке, но поддерживают width/height.