Рубріки: Теория

Комментарии в HTML: примеры и особенности

Анастасія Рахліна

HTML (HyperText Markup Language) — язык для гипертекстовой разметки документов для просмотра веб-страниц в браузере. HTML осваивают с азами программирования, и комментарии HTML — отдельная глава.

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

Что такое комментарии в HTML

Комментарии в HTML — это определенная конструкция в коде, которая помогает во время рефакторинга, но при этом не будет видна пользователю, который будет просматривать страницу в браузере.  

Для чего они нужны

Это способ облегчить себе и своим коллегам работу в дальнейшем. Безусловно, каждый разработчик будет не раз возвращаться к ранее написанному коду. И определенные подсказки могут быть полезны при рефакторинге кода и удалении лишних строк.

Никаких ограничений в использовании комментариев нет. Единственное место на странице, где этого нельзя делать — тег <title> — внутри этого тега комментарии не будут работать.

Чтобы закомментировать или раскомментировать код в HTML воспользуйтесь сочетанием клавиш ctrl + / или cmd + /.

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

Комментарии также могут значительно сократить время, потраченное на исправление багов.

К тому же, наличие комментариев всегда улучшает читабельность кода.

Синтаксис

Что важно помнить, говоря о синтаксисе комментариев? Для написания комментария используется  тег <!-- -->.

Давайте рассмотрим пример комментария в коде:

<!DOCTYPE html>
<html>
 <head>
   <!-- заголовок страницы -->
   <title>Комментарии в HTML документе</title>
 </head>
 <body>
   <!-- шапка сайта -->
    <div class="header">...</div>
   <!-- основная часть страницы -->
    <div class="content">...</div>
   <!-- левая колонка -->
   <div class="toolbar">...</div>
    <!-- подвал сайта -->
   <div class="footer">...</div>
 </body>
</html>

Как мы уже говорили выше, комментарии не будут работать внутри тега <title>, но это не единственное ограничение. История повторится и с тегом  <style>

Особое внимание стоит уделить знаку восклицания. Когда мы применяем восклицательный знак после угловой скобки (<!), то сообщаем браузеру, что весь последующий текст уже не следует воспринимать как HTML-код. Действительно, тег выглядит непривычно и отличается от стандартных вариаций, поскольку содержит только одну угловую скобку (это справедливо как для открывающего, так и для закрывающего тега). 

Давайте рассмотрим еще один пример:

<!DOCTYPE html>
<html>
   <head>
       <title>Заголовок окна веб-страницы</title>
   </head>
   <body>
         <h1>Заголовок страницы</h1>
         <!--  <p>Эту часть кода мы хотим временно скрыть</p> -->
         <a href="https://ru.w3docs.com">домашняя страница</a>  
       <!--  <p>Ссылка на домашнюю страницу сайта</p> -->
   </body>
</html>

Отображение в браузере

С отображением комментариев в браузере все обстоит просто — они не отображаются 🙂 Это утверждение универсально для всех комментариев. 

HTML-комментарий из одной строки

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

<!-- Это первый комментарий, он не будет виден на странице -->

<h1>А это - заголовок. Он будет отображаться на странице.</h1>

<!-- Это второй комментарий, его тоже не будет видно -->

Восклицательный знак в этом случае ставится в начале, в конце он уже не нужен.

Этот комментарий — самый простой пример использования комментариев в HTML-коде.

HTML-комментарий из нескольких строк

Более сложная вариация — это HTML-комментарий из нескольких строк. 

Пример такого комментария:

<!--
Многострочный комментарий.
В нем помещается много информации.
Возможно вместить даже целую статью
Или рассказ .
-->

Или же:

<!--
<h1>Закомментированный заголовок</h1>
<p>Этот абзац тоже не будет виден</p>
-->

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

Условные комментарии

Условные комментарии HTML — это комментарии, которые дают возможность задавать блоки кода, которые будут выполняться исключительно в заданной версии браузера Internet Explorer. Во всех других версиях браузера Internet Explorer и в других браузерах их содержимое будет считаться обычным комментарием.

У условных комментариев есть свой синтаксис, который нужно задавать:

<!--[if Условие IE Версия]>Какой-то текст<![endif]-->

У нас есть несколько опций для выбора оператора:

  • gt — больше чем;
  • gte — больше или равно;
  • ! — не равно;
  • lt — меньше чем;
  • lte — меньше или равно;
  • IE — любая версия браузера Internet Explorer;
  • IE 6 — Internet Explorer 6;
  • IE 7 — Internet Explorer 7;
  • IE 8 — Internet Explorer 8;
  • IE 9 — Internet Explorer 9.

Параметр «Версия» необязателен, но в нем можно указать номер версии браузера Internet Explorer.

Давайте посмотрим на несколько примеров:

<!--[if IE]>Какой-то код<![endif]--> — выполнять содержимое комментария, если браузер — любая версия Internet Explorer;

<!--[if gt IE 9]>Какой-то код<![endif]--> — выполнять содержимое комментария, если браузер — Internet Explorer большей версии, чем указана.

Например:

<!DOCTYPE html>
<html>
 <head>
  <meta charset="UTF-8">
  <title>Без комментариев</title>  
 </head>
 <body>
  <p>Характеристикой быстроты служит физическая величина — скорость.</p>
 </body>
</html>

<!--[if lte IE 8]>
  ...
<![endif]-->

Условный комментарий всегда начинается так:

<!--[if lte IE 8]>
  <p>... после которой идет HTML-код. Заканчивается (<strong>endif</strong>) условный комментарий строкой:</p>
<![endif]-->

Возможные ошибки

Говоря о комментариях, невозможно не упомянуть возможные ошибки, с которыми могут столкнуться разработчики. 

Для начала вспомним важные правила, которые существуют в комментировании:

  • нельзя начинать комментарий со знака >;
  • аналогичный запрет действует и для знака -, мы не можем использовать его в начале;
  • после знака - не может следовать символ >;
  • нельзя использовать последовательно символы дефис-минус --;
  • нельзя завершать комментарий символом дефис или минус -.

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

Пример таких ошибок можно увидеть ниже:

< !-- Неправильный комментарий #1 -->

<-- Неправильный комментарий #2 -->

Поскольку эти комментарии написаны неправильно, правила отображения на них не распространяются. Они будут отображаться в браузере. 

Что еще мы можем отнести к ошибкам? 

К примеру, незакрытый тег или отсутствие обязательного атрибута. Использование нерекомендованных символов в ссылках — также подводный камень, на который часто натыкаются начинающие разработчики.

Относительно значения атрибута id  — оно не должно повторяться:

<!-- неправильно -->
<div id="block"></div>
<div id="block"></div>

<!-- правильно -->
<div id="block-1"></div>
<div id="block-2"></div>

Примеры использования комментариев в HTML-коде

Предлагаем вам взглянуть на несколько примеров использования комментариев в HTML-коде.

В этом небольшом примере один комментарий:

<!DOCTYPE html>
<html>
 <head>
  <meta charset="UTF-8">
 <title>Комментарий</title>  
 </head>
 <body>
  <p>Я надел шапку-невидимку.</p>
  <!--Я стал невидимым-->
 </body>
</html>

Здесб закомментированы разделы сайта «Меню» и «Содержимое документа»:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
  "http://www.w3.org/TR/html4/strict.dtd">
<html>
 <head>
   <title>Комментарии</title>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 </head>
 <body> 

  <!-- Меню -->
  <div>Меню</div>

  <!-- Контент -->
  <div>Содержимое документа</div>

 </body> 
</html>

Вот хороший пример, в котором комментарий помогает понять, где начинается новый раздел:

<!DOCTYPE html>
<html>
 <head>
   <title>Комментарии</title>
   <meta charset="utf-8">
 </head>
 <body> 
   <!-- Раздел -->
   <section class="b-lastAdded">
    <h1 class="b-lastAdded__title">Последние добавленные фотографии</h1>
    <div class="b-lastAdded__item">...</div>
   </section>
 </body> 
</html>

Поддерживаемые браузеры

Сегодня, как ни странно, не все браузеры поддерживают HTML. Но Opera, Chrome, олдскульная Mozilla и Internet Explorer обеспечивают максимальную поддержку новых стандартов.

Останні статті

Обучение Power BI – какие онлайн курсы аналитики выбрать

Сегодня мы поговорим о том, как выбрать лучшие курсы Power BI в Украине, особенно для…

13.01.2024

Work.ua назвал самые конкурентные вакансии в IТ за 2023 год

В 2023 году во всех крупнейших регионах конкуренция за вакансию выросла на 5–12%. Не исключением…

08.12.2023

Украинская IT-рекрутерка создала бесплатный трекер поиска работы

Unicorn Hunter/Talent Manager Лина Калиш создала бесплатный трекер поиска работы в Notion, систематизирующий все этапы…

07.12.2023

Mate academy отправит работников в 10-дневный оплачиваемый отпуск

Edtech-стартап Mate academy принял решение отправить своих работников в десятидневный отпуск – с 25 декабря…

07.12.2023

Переписки, фото, история браузера: киевский программист зарабатывал на шпионаже

Служба безопасности Украины задержала в Киеве 46-летнего программиста, который за деньги устанавливал шпионские программы и…

07.12.2023

Как вырасти до сеньйора? Девелопер создал популярную подборку на Github

IT-специалист Джордан Катлер создал и выложил на Github подборку разнообразных ресурсов, которые помогут достичь уровня…

07.12.2023