Привет, посетитель сайта ZametkiNaPolyah.ru! Этой записью мы продолжаем рубрику: Верстка сайтов, в которой есть раздел HTML. Темой сегодняшней публикации будет синтаксис HTML тэгов и атрибутов.  Тема довольно важная, поскольку HTML документ состоит из: тэгов, атрибутов и комментариев. Прочитав данную статью, вы познакомитесь с правилами стандарта языка HTML, которые нужно соблюдать при создании HTML документов.

Синтаксис HTML. HTML тэги: парные HTML тэги, одиночные HTML тэги. Что такое HTML тэг?

Синтаксис HTML. HTML тэги: парные HTML тэги, одиночные HTML тэги. Что такое HTML тэг?

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

Синтаксис HTML. Что такое HTML тэг и для чего нужны тэги?

Прежде чем начать рассматривать синтаксис HTML и разбираться с видами HTML тэгов, давайте ответим на вопрос: «что такое HTML тэг»? Вопрос, на самом деле, довольно простой и ответить на него можно следующим образом: HTML тэг – это то, что стоит в угловых скобках. Если вы считаете, что я еще не ответил на вопрос «что такое HTML тэг», то давайте приведем несколько примеров.

Когда мы говорили про структуру HTML документа, то уже видели несколько примеров HTML тэгов: <html>, </html>, <body>, <!DOCTYPE> и другие. Заметим, что тэги <html> и </html> — это разные тэги, но об этом несколько ниже. На вопрос: что такое HTML тэг, мы ответили, давайте теперь разберемся с вопросом: «для чего нужны HTML тэги?».

Вопрос справедливый и требует ответа. Когда мы разбирались с вопросом: что такое HTML, то говорили о том, что для просмотра HTML файл можно открыть в браузере и всё, что мы видим в области просмотра браузера – это HTML элементы. Когда браузер получает HTML документ, он анализирует HTML тэги и при помощи этих тэгов формирует элементы, которые мы видим и с которыми можем взаимодействовать.

Ответив на вопросы: что такое HTML тэг и зачем нужны HTML тэги. Мы практически разобрались с синтаксисом HTML. Синтаксис HTML– это правила написания HTML тэгов и HTML атрибутов. Чтобы браузер мог правильно сформировать HTML элемент, мы должны правильно указать название HTML тэга и правильно задать HTML атрибут.

Синтаксис HTML тэгов очень прост: название тэга пишется в треугольных скобках, скорее всего, браузер вас поймет, если между названием HTML тэга и угловыми скобками вы поставите пробел, но делать этого не нужно. Есть одна рекомендация, касающаяся правил написания HTML тэгов и синтаксиса HTML: весь HTML код, за исключение тэга DOCTYPE пишется в нижем регистре.

Если вы будете соблюдать это правило, то облегчите жизнь не только себе, но и другим разработчиком, так как JavaScript разработчики тоже взаимодействуют с HTML элементами при помощи имен HTML тэгов, такой подход упростит в дальнейшем ваше знакомство с XHTML. Еще раз повторим, что это всего лишь рекомендация, никто не запрещает вам писать <HTML> или <BODY>, или даже <HtMl>.

Виды HTML тэгов

Мы разобрались с тем, что такое HTML и с синтаксисом HTML тэгов, то есть с правилами написания HTML тэгов, про синтаксис HTML атрибутов мы поговорим несколько ниже. Сейчас нам стоит отметить, что HTML тэги делятся на два вида: парные HTML тэги и одиночные HTML тэги. Деление HTML тэгов на виды является особенностью языка HTML и в то же время, является правилами, которые не нужно нарушать, то есть синтаксисом языка HTML.

Тэги еще делятся на: обязательные HTMLтэги (такие тэги, которые писать обязательно) и опциональные HTML тэги – это те тэги, писать которые не обязательно, есть еще запрещенные HTML тэги, которые уже устарели и скоро будут удалены из стандарта и, соответственно, браузеры перестанут «понимать» такие тэги. Типичным примером одиночного HTML тэга является тэг DOCTYPE, он, кстати, является обязательным. А типичными примерами парных HTML тэгов являются тэги: <html>...</html>, <head>...</head>, <body>...</body>. Все примеры парных HTML тэгов являются опциональными.

Помните, мы создали HTML документ с простым текстом: «Hello, World!», а браузер, проанализировав документ, создал его структуру? Он сделал это потому, что стандарт HTML считает эти тэги опциональными, но это не означает, что их не нужно писать, когда вы создаете HTML страницу.

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

Парные HTML тэги: открывающие и закрывающие HTML тэги

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

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

Заметим, что парные HTML тэги не обязательно должны иметь какое-либо содержимое и это не будет ошибкой или чем-то неправильным. Если мы посмотрим на тэг <html>...</html>, то поймем, что первая его часть <html> является открывающим HTML тэгом и означает она то, что начался HTML документ.

Но у рассматриваемого тэга есть вторая часть </html>. Тэг </html> является закрывающим HTML тэгом и пишется он точно так же, как и открывающий, но перед именем тэга обязательно указывается обратный слэш. В данном случае тэг </html>говорит о том, что HTML документ закончился.

Но в языке HTML есть такие тэги, которые являются парными и для которых закрывающий тэг необязателен, такие тэги называются опциональными HTML тэгами. Мы уже сказали, что <html>, <head>и <body> — это опциональные HTML тэги, их мы можем вообще не писать. Тэг, формирующий элемент HTML списка <li>так же является парным и опциональным HTML тэгом, HTML тэг <p>или параграф тоже парный опциональный тэг, для этих тэгов мы можем не указывать закрывающий тэг, браузер обычно понимает конечную границу этих тэгов, анализируя другие тэги на странице.

Давайте сделаем выводы о парных тэгах в контексте синтаксиса языка HTML:

  1. Парные HTML тэги используются, как контейнеры для текста или других HTML тэгов, хотя наличие содержимого парных HTML тэгов необязательно.
  2. Парные HTML тэги состоят из двух тэгов: открывающего и закрывающего.
  3. Закрывающий HTML тэг отличается от открывающего тем, что перед именем закрывающего тэга нужно написать бэкслэш.
  4. Синтаксис языка HTML предусматривает опциональные парные тэги, например<html>, <head>, <body>. Эти тэги мы можем не писать и браузер сгенерирует их за нас.
  5. Некоторые парные тэги предусматривают опциональный закрывающий тэг: практические все тэги для создания HTMLтаблиц, тэг списка <li>, тэг параграфа <p>и другие.

Одиночные HTML тэги

С синтаксисом парных HTML тэгов мы разобрались, перейдем к одиночным тэгам. Первое, что стоит сказать про одиночные HTML тэги – у них нет никакого содержимого. Предназначены одиночные HTML тэги для формирования какого-либо графичекого HTML элемента или символа на странице.

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

Нам сейчас важно сделать вывод о том, что синтаксис языка HTML предусматривает одиночные HTML тэги, эти тэги не имеют никакого содержимого и используются для того, чтобы сформировать графический элемент на странице. Для одиночных HTML тэгов закрывающий тэг запрещен стандартом. Среди одиночных HTML тэгов нет опциональных тэгов.

Синтаксис HTML атрибутов

Про HTML атрибуты мы поговорим более подробно в отдельной записи. Сейчас давайте разберемся с назначением HTML атрибутов и с синтаксисом HTML атрибутов. Первое, что стоит сказать: атрибуты делятся на две большие группы: универсальные HTML атрибуты и атрибуты событий.

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

Синтаксис HTML атрибутов так же прост, как и для HTML тэгов: HTML атрибут состоит из двух частей: свойства и значения.

[php]

attribute = “value”

[/php]

Значение присваивается свойству знаком равно. Если значение строковое, то его нужно обязательно указывать в кавычках, если значение числовое – без кавычек. У некоторых HTML атрибутов вообще нет значения, вернее, оно есть, но мы на него повлиять никак не можем. Еще одной важной особенностью синтаксиса HTML атрибутов является то, что атрибут для тэга указывается обязательно внутри треугольных скобок открывающего тэга:

[php]

<p id=”hello”>Hello, World</p>

[/php]

Мы разобрались с синтаксисом HTML атрибутов и главное, что нужно запомнить: HTML атрибуты нужны, чтобы сделать HTML тэг уникальным.

HTML тэг комментариев. Синтаксис HTML комментариев

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

[php]

<!--Здесь может быть любой текст,

его можно писать даже в несколько

строк -->

[/php]

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

Примеры одиночных и парных HTML тэгов в документе и на странице

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

[php]

<!DOCTYPE html>

<html lang="ru-RU">

<head>

<meta charset="UTF-8">

<title>Синтаксис HTML. HTML тэги.</title>

<link rel="stylesheet" type="text/css" href="style.css" />

</head>

<body>

<h1>Пример к статье синтаксис HTML и HTML тэги</h1>

<p>HTML тэг параграфа является парным HTML тэгом,

давайте в этом убедимся</p>

<p>Напишем открывающий HTML тэг p, но закрывющий

писатьнебудем

<p>Нам нужен еще один параграф, чтобы браузер понял, где закрыть

предыдущий</p>

<!-- А теперь сделаем несколько переносов строк

для этого есть тэг <br> -->

<br>

<br>

<!-- и нарисуем горизонатальную линию -->

<hr>

<ul>

<li style="color: red;">Закрывающий</li>

<li>тэг</li>

<li>li</li>

<li>является

<li>опциональным

</ul>

</body>

</html>

[/php]

Скопируйте код выше в любой текстовый редактор кода и сохраните его в любом месте на диске с расширением .html или .htm. А затем откройте его в браузере, вы увидите примерно следующее:

Браузер проанализировал HTML тэги и сгенерировал HTML страницу

Браузер проанализировал HTML тэги и сгенерировал HTML страницу

Давайте проанализируем самостоятельно наш HTML документ. Мы создали структуру HTML документа, границей которой является парный тэг <html>…</html>, кстати для тэга <html> мы задали HTML атрибут lang, который говорит браузеру на каком языке написан текст документа. Тэгом DOCTYPE мы создали декларацию и сказали браузеру, что для анализа он должен использовать стандарт HTML 5.

Внутри заголовка HTML документа нами была указана кодировка при помощи одиночного тэга <meta>и атрибута charset со значение “UTF-8”. Название HTML документа мы указали внутри тэга <title>, оно отображается на вкладке в браузере.

В теле HTML документа мы расположили те тэги, которые видны в области просмотра, заметьте: в теле документа есть комментарии, но они не показываются в области просмотра и вообще никак не влияют на то, что видит пользователь в браузере. Это можно проверить, посмотрев код HTML элементов в браузере:

Особенность HTML комментариев заключается в том, что браузер их не показывает в области просмотра

Особенность HTML комментариев заключается в том, что браузер их не показывает в области просмотра

Комментарии в консоли есть, но браузер их не отображает. Далее мы видим HTML заголовок <h1> — это парный тэг, для которого закрывающий тэг обязательный. Под заголовком размещено три параграфа, для тэга <p>закрывающий тэг </p> необязательный. Если вы внимательней посмотрите на рисунок выше, то увидите, что второму параграфу браузер добавил закрывающий тэг </p>самостоятельно. В консоли второй параграф выделен мышкой и при этом браузер его подсвечивает в области просмотра.

Далее у нас идет два одиночных тэга <br>, которые добавляют символ переноса строки на страницу, за <br> расположен тэг <hr>, который рисует горизонтальную линию. Для одиночных тэгов закрывающий тэг запрещен.

Под горизонтальной линией расположен HTML список, первый элемент которого выделен красным благодаря атрибуту style и его значению. Тэг <li>является парным, но с опциональным закрывающим тэгом, давайте посмотрим код элемента в браузере.

Мы видим, что браузер автоматически добавил закрывающие тэги </li>к двум последним элементам списка.

Так же наш простой пример показывает, что парные HTML тэги являются контейнерами для текста или других тэгов (как в случае HTML списка, где тэг <ul>является контейнером для HTML тэга <li>), а одиночные HTML тэги не имеют содержимого. Таковы особенности синтаксиса языка HTML.

Возможно, эти записи вам покажутся интересными


Выберете удобный для себя способ, чтобы оставить комментарий

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Loading Disqus Comments ...