Почему теги вроде img и br не нужно закрывать, а p и div нужно?
Заметил, что <p> обязательно надо закрыть </p>, а <img> и <br> пишутся без закрывающего тега. Почему так? Как понять, какие теги парные, а какие нет, чтобы не ошибаться?
2 ответа
Теги делятся на два вида:
Парные — у них есть содержимое между открывающим и закрывающим тегом. Их нужно закрывать:
<p>текст внутри</p>
<a href="#">ссылка</a>
<div>...</div>
Одиночные (пустые) — у них нет содержимого внутри, поэтому и закрывать нечего. Их немного, запомни основные:
<img src="cat.jpg" alt="кот">
<br>
<hr>
<input type="text">
<meta charset="UTF-8">
Логика простая: если в тег что-то кладут внутрь (текст, другие теги) — он парный. Если тег сам по себе что-то вставляет (картинку, перенос, линию) — одиночный. В современном HTML5 писать <br /> со слэшем не обязательно, <br> достаточно.
Совет: не забывай закрывать парные теги и закрывай их в обратном порядке. Если открыл <div><p>, то закрывай </p></div>, а не наоборот. Перекрёстное закрытие (</div></p>) — частая причина «поехавшей» вёрстки. Редактор VS Code с подсветкой здорово помогает это замечать.