Комментарии и правила читаемого кода

Иногда в коде хочется оставить заметку для себя или коллеги, которую не увидят посетители сайта - для этого в HTML есть комментарии. А чтобы в разметке было легко ориентироваться, когда теги вкладываются друг в друга, важно делать отступы: чем глубже тег вложен, тем правее он начинается.

Попробуй убрать (<!--) и (-->) вокруг комментария - его текст появится на странице как обычный абзац. А если убрать отступы у (<p>), страница будет выглядеть точно так же - но читать такой текст станет заметно сложнее.

Как писать комментарии в HTML

Комментарий начинается с <!-- и заканчивается на -->. Всё что между ними, браузер полностью пропускает - этот текст не появляется на странице ни в каком виде а виден только тем, кто открывает исходный код.

<!-- Это комментарий, его не видно --> - текст спрятан от посетителя страницы.

Это комментарий, его не видно - без <!-- и --> это уже не комментарий а обычный текст и он появится на странице.

Из истории Комментарии не всегда были полностью «невидимы» для любого браузера. Много лет Internet Explorer понимал специальный синтаксис прямо внутри комментария - <!--[if IE]>...<![endif]--> - и выполнял код внутри него, пока остальные браузеры просто пропускали всё как обычный комментарий. Такие «условные комментарии» официально убрали в Internet Explorer 10 - и в обычном, и в режиме совместимости, - чтобы браузер лучше соответствовал HTML5.

Зачем нужны отступы у вложенных тегов

Отступы - это пробелы перед тегом, которые показывают уровень вложенности: чем глубже тег внутри других тегов, тем правее он начинается. На то, что покажет браузер, отступы никак не влияют - страница выглядит одинаково что с ними, что без них. Разница только для человека, который читает код.

<div>
  <p>Первый абзац.</p>
</div>

<p> начинается правее <div> - сразу видно, что он вложен внутрь.

<div>
<p>Первый абзац.</p>
</div>

Результат на странице будет ровно таким же, но в самом коде уже сложнее увидеть, что куда вложено.

Частые ошибки новичков

ОшибкаЧто происходитКак исправить
Писать в комментарии то, что не должен увидеть посторонний Комментарий не виден на странице, но остаётся в исходном коде - его легко найти через «Просмотреть код страницы» Не писать в комментариях пароли, личные данные или служебные заметки не для чужих глаз
Поставить только один дефис с каждой стороны: <!- текст -> Это не соответствует синтаксису комментария - результат в разных браузерах непредсказуем Всегда использовать ровно два дефиса с каждой стороны: <!-- и -->
Не делать отступы вообще, весь код в одну колонку Страница выглядит так же, но в самом коде почти невозможно понять, что куда вложено Делать отступ на каждом уровне вложенности
Мешать табы и пробелы для отступов в одном файле Отступы выглядят «вразнобой» в разных редакторах кода Выбрать что-то одно - табы или пробелы - и использовать последовательно

Шпаргалка

ТерминЗначение
<!-- текст -->Комментарий: виден в коде, но не на странице
ОтступПробелы перед тегом, показывающие уровень вложенности
Значение для браузераНоль - браузеру всё равно, есть отступы или нет
Значение для человекаВсё - без отступов сложный код почти невозможно читать

Коротко: отвечаем на вопросы

Можно ли вложить один HTML-комментарий в другой?

Нет. Браузер закрывает комментарий на первом же встреченном «-->», поэтому вложенные комментарии не работают - конец внешнего комментария наступит раньше, чем задумано, и остаток кода может показаться на странице.

Табы или пробелы для отступов - что правильно?

Единого стандарта нет - для браузера разницы никакой. Если пишешь код один - используй что удобнее. Если работаешь в команде - придерживайся того, что уже принято в проекте, а не смешивай оба варианта.

Стоит ли перед публикацией сайта убирать комментарии и отступы ради скорости?

Такая обработка называется минификацией, и она реально уменьшает размер файла. Но это отдельный автоматический шаг перед публикацией - на этапе обучения и написания кода комментарии и отступы, наоборот, лучше оставлять для читаемости.

Категория
Поделиться в социальных сетях

Отправить комментарий

0 Комментарии

Отправить комментарий (0)

#buttons=(Хорошо) #days=(20)

Мы используем файлы cookie для улучшения работы сайта. Подробнее
Хорошо
×