Привет, посетитель сайта 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 документе.

Списки делают информацию более наглядной и удобной для восприятия. Например, вы составляете список покупок, берете лист бумаги и пишите:

  1. Молоко.
  2. Хлеб.
  3. Колбаса.
  4. Яйцо.

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

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

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

Виды списков в HTML

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

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

Для того, чтобы создать элемент списка в HTML используется тэг <li>, он является парным HTML тэгом, закрывающей тэг опциональный (браузер сформирует закрывающий тэг </li> автоматически перед следующим блочным HTML элементом). HTML элемент li является блочным, а это означает, что он будет занимать всю доступные ширину HTML страницы или той области, в которой он расположен.

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

  1. Нумерованный HTML список формируется при помощи HTML тэга <ol>. Каждый пункт такого списка будет пронумерован, хотя вместо арабских цифр могут быть использованы римские цифры или буквы алфавита. Сокращение ol расшифровывается как ordered list.
  2. Маркированный HTML список. Каждый элемент такого списка имеет маркер с левой стороны. Маркированный HTML список формируется при помощи тэга <ul>, что можно расшифровать, как unordered list.
  3. Список определений состоит из трех HTML элементов и формируется при помощи трех тэгов. За формирование списка определений в HTML отвечает тэг <dl>. Тэг парный с обязательным закрывающим тэгом. HTML элемент DL блочный. Сокращение dl расшифровывается, как definition lists. Особенность списка определений заключается в том, что один его пункт состоит из двух HTML элементов: первый элемент – это термин, который обозначается тэгом <dt>, он является парным тэгом с опциональным закрывающим. HTML элемент DT блочный. Второй элемент – определение, которое обозначается тэгом <dd>, это парный тэг с опциональным закрывающим тэгом, а HTML элемент DT блочный.
  4. Список директорий в HTML считается запрещенным и не рекомендован к использованию. Список директорий формируется при помощи тэга <dir>, который является парным HTML тэгом, а элемент HTML страницы DIR блочный.
  5. Список меню в HTML. Формируется при помощи тэга <menu>, тэг <menu> является парным тэгом, а элемент MENU блочный. В стандарте HTML01 тэг <menu> считается запрещенным, но стандарт HTML 5 рекомендует использовать тэг <menu> для создания меню на сайте, чтобы поисковые системы и некоторые браузеры понимали, что это не просто список со ссылками, а именно меню сайта.

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

Маркированный HTML список. HTML атрибуты маркированных списков

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

Мы можем менять вид маркера при помощи специального HTML атрибута type. Маркер списка может быть отображен тремя разными способами: в виде диска, в виде окружности и в виде квадрата. Соответственно:

  1. Чтобы сделать маркер HTML списка в виде диска, нам нужно указать: type=”disc”.
  2. Если мы хотим, чтобы маркер списка отображался в виде квадрата, то нужно написать следующее: type=”square”.
  3. Если же вы хотите, чтобы маркер HTML списка был в виде окружности, то: type=”circle”.

Значение по умолчанию для любого маркированного HTML списка в любом браузере: type=”disc”. CSS так же позволяет изменять вид маркера при помощи свойства list-style-type.

Давайте попрактикуемся в создании маркированных HTML списков, откройте любой редактор (можно даже Блокнот, но я бы рекомендовал вам попробовать бесплатный редактор с подсветкой синтаксиса Notepad++)  и напишите следующий код:

[php]

<!DOCTYPE html>

<html lang="ru-RU">

<head>

<meta charset="UTF-8">

<title> Примеры маркированного HTML списка </title>

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

</head>

<body>

<h1>Примеры маркированного HTML списка</h1>

<ul>

<li>Первый элемент списка

<li>Второй элемент списка

<li>Третий элемент списка

<li>Четвертый элемент списка

<li>Пятый элемент списка

</ul>

<h2>Делаем маркер HTML списка в виде окржности</h2>

<ul>

<li type="circle">Первый элемент списка</li>

<li type="circle">Второй элемент списка</li>

<li type="circle">Третий элемент списка</li>

<li type="circle">Четвертый элемент списка</li>

<li type="circle">Пятый элемент списка</li>

</ul>

<h2>Делаем маркер HTML списка квадратным</h2>

<ul>

<li type="square">Первый элемент списка</li>

<li type="square">Второй элемент списка</li>

<li type="square">Третий элемент списка</li>

<li type="square">Четвертый элемент списка</li>

<li type="square">Пятый элемент списка</li>

</ul>

</body>

</html>

[/php]

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

Изменяем тип маркера неупорядоченного HTML списка

Изменяем тип маркера неупорядоченного HTML списка

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

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

Нумерованный HTML список. HTML атрибуты нумерованных списков

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

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

  1. Атрибут type. Атрибут type изменяет тип нумерации упорядоченного списка. Нам доступны три значения для данного атрибута: type=”A” делает нумерацию HTML списка в виде заглавных латинских букв; type=”a” в этом случае нумерация списка будет производиться при помощи строчных латинских букв; type=”I” позволяет изменить нумерацию на заглавные римские цифры; type=”i” в этом случае нуммерация будет произведена строчными римскими цифрами и type=”1” – это значение по умолчанию для всех нумерованных HTML списков в любом браузере. В CSS можно изменять вид нумерованного списка при помощи свойства list-style-type.
  2. Атрибут reversed. Данный атрибут меняет порядок нумерации упорядоченного HTML списка. Атрибут не имеет значений. Аналогов в CSS у данного атрибута нет.
  3. Атрибут start. Данный атрибут не имеет аналогов в CSS и используется для изменение стартового номера в нумерованном HTML списке. В качестве значения данный атрибут принимает целые числа для любого типа нумерованного HTML списка.

Итак, мы разобрались как можно изменять и создавать нумерованные списки в HTML, давайте теперь попрактикуемся и попробуем поработать с упорядоченными списками, откройте редактор (рекомендую попробовать бесплатный CSS редактор Brackets, его функционал можно расширять при помощи всевозможных плагинов):

[php]

<!DOCTYPE html>

<html lang="ru-RU">

<head>

<meta charset="UTF-8">

<title>Примеры нумерованного HTML списка</title>

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

</head>

<body>

<h1>Примеры нумерованного HTML списка</h1>

<h2> Изменяем тип нумерованного HTML списка</h2>

<ol>

<li>Первый элемент списка

<li>Второй элемент списка

<li>Третий элемент списка

</ol>

<h3>Используем для нумерации списка большие римские цифрры</h3>

<ol>

<li type="I">Первый элемент списка</li>

<li type="I">Второй элемент списка</li>

<li type="I">Третий элемент списка</li>

</ol>

<h3>Используем для нумерации заглавные латинские буквы</h3>

<ol>

<li type="A">Первый элемент списка</li>

<li type="A">Второй элемент списка</li>

<li type="A">Третий элемент списка</li>

</ol>

<h3>Используем для нумерации строчные латинские буквы</h3>

<ol>

<li type="a">Первый элемент списка</li>

<li type="a">Второй элемент списка</li>

<li type="a">Третий элемент списка</li>

</ol>

<h3>Используем для нумерации строчные римские цифры</h3>

<ol>

<li type="i">Первый элемент списка</li>

<li type="i">Второй элемент списка</li>

<li type="i">Третий элемент списка</li>

</ol>

<h2>Изменяем порядок нумерации HTML списка</h2>

<ol reversed type="A">

<li>Первый элемент списка

<li>Второй элемент списка

<li>Третий элемент списка

<li>Четвертый элемент списка

<li>Пятый элемент списка

<li>Шестой элемент списка

</ol>

<h2>Изменяем точку отсчета в упорядоченном списке</h2>

<ol reversed type="I" start="40">

<li>Первый элемент списка

<li>Второй элемент списка

<li>Третий элемент списка

<li>Четвертый элемент списка

<li>Пятый элемент списка

<li>Шестой элемент списка

</ol>

</body>

</html>

[/php]

Пример довольно объемный, но он демонстрирует все доступные возможности по работе с нумерованными HTML списками. Давайте разбираться по порядку. Первая часть примера, обозначенная HTML заголовком <h2> с текстом: «Изменяем тип нумерованного HTML списка», демонстрирует нам, как атрибут type меняет тип нумерации упорядоченного/нумерованного HTML списка:

Изменяем тип нумерации в упроядоченном списке

Изменяем тип нумерации в упорядоченном списке

Вторая часть примера, которую мы также обозначили заголовком <h2>, но уже с текстом: «Изменяем порядок нумерации HTML списка». Показывает то, как мы можем изменить порядок нумерации HTML списка при помощи атрибуты reversed:

Изменяем порядок нумерации HTML списка

Изменяем порядок нумерации HTML списка

И третья часть примера хорошо демонстрирует, как изменить начало отсчета нумерованного HTML списка:

как изменить начало отсчета нумерованного HTML списка

как изменить начало отсчета нумерованного HTML списка

Отметим, что для нумерованного HTML списка доступны все универсальные HTML атрибуты и атрибуты событий. Это всё, что есть в HTML для работы с нумерованными списками. Давайте двигаться дальше и разбираться с тем, как мы можем работать с другими видами HTML списков.

Список определений в HTML. HTML атрибуты списков определений

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

Список определений создается при помощи специального HTML тэга <dl>, внутри которого не могут располагаться никакие другие тэги, кроме <dt> и <dd>, причем именно в том порядке, в котором мы указали, иначе ничего не выйдет. Особенность списка определений в HTML в том, что каждый его пункт состоит из двух элементов:

  1. Термин, который указывается в контейнере <dt>.
  2. Определение термина, которое указывается в контейнере <dd>.

Давайте попрактикуемся в создании списков определений, откройте редактор (например, IDE NetBeans редакции PHP, очень мощная и быстрая среда разработки) и создайте следующий документ:

[php]

<!DOCTYPE html>

<html lang="ru-RU">

<head>

<meta charset="UTF-8">

<title>Примеры списков определний в HTML</title>

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

</head>

<body>

<h1>Примеры списков определний в HTML</h1>

<dl>

<dt>Термин</dt>

<dt>Определние термина</dt>

<dt>Xenu Link</dt>

<dt>Удобная и бесплатная программа для поиска битых ссылок на сайте и его внтреннего аудита.

Благодаря тому, что Xenu проста в использование, бесплатна и многофункциональна, данное

приложение звоевало популярность среди многих веб-мастеров.</dt>

<dt>SQLite3</dt>

<dt>Встраиваемая система управления базами данных, основанная на стандарте SQL-92.

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

операционной системы или приложением, в которое SQLite3 встроена.</dt>

<dt>HTTP</dt>

<dt>Протокол, по которому происходит взаимодействие в сети Интернет. Протокол HTTP был разработан в

стенах ЦЕРНа, здесь же был разработан первый стандарт HTML.</dt>

</dl>

</body>

</html>

[/php]

Давайте посмотрим, как браузер отобразит список определений на HTML странице:

Так браузер отобразит список определений на HTML странице

Так браузер отобразит список определений на HTML странице

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

Список директорий в HTML

Список директорий в HTML – это уникальный список, так как у него нет HTML атрибутов. К тому же список директорий не рекомендован к использованию стандартом HTML, вместе него консорциум рекомендует использовать маркированный список. Список директорий в HTML формируется при помощи тэга <dir>. Внутри данного тэга могут находиться только элементы списка директорий, которые создаются при помощи тэга <li>.

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

Многоуровневый HTML список. Вложенный список в HTML

Списки в HTML могут быть многоуровневые или, как их еще называют вложенные HTML списки. Мы знаем, что внутри тэгов, формирующих HTML списки, не может быть никаких других тэгов, кроме тех, что формируют элементы списков (для нумерованного и маркированного списка это тэг <li>), но внутри тэга <li> могут находиться другие тэги: в том числе и тэги <ol> и <ul>. За счет этого правила мы можем создавать многоуровневые списки в HTML.

Давайте попробуем создать несколько примеров многоуровневых HTML списков. Откройте редактор (например, JavaScript редактор Sublime Text 3, основной его минус в том, что он платный):

[php]

<!DOCTYPE html>

<html lang="ru-RU">

<head>

<meta charset="UTF-8">

<title>Примеры многоуровневых HTML списков</title>

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

</head>

<body>

<h1>Примеры многоуровневых HTML списков</h1>

<h2>Простой пример многоуровневого списка</h2>

<ul>

<li>Первый элемент списка</li>

<li>Второй элемент списка

<ul>

<li>Первый элемент вложенного списка</li>

<li>Второй элемент вложенного списка</li>

<li>Третий элемент вложенного списка</li>

</ul>

</li>

<li>Третий элемент списка</li>

<li>Четвертый элемент списка</li>

<li>Пятый элемент списка</li>

</ul>

</body>

</html>

[/php]

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

Пример отображения вложенного HTML списка

Пример отображения вложенного HTML списка

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

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

[php]

<ul>

<li>Первый элемент списка</li>

<li>Второй элемент списка

<ul>

<li>Первый элемент вложенного списка</li>

<li>Второй элемент вложенного списка

<ul>

<li>Первый элемент списка третьего уровня</li>

<li>Второй элемент списка третьего уровня</li>

</ul>

</li>

<li>Третий элемент вложенного списка</li>

</ul>

</li>

<li>Третий элемент списка</li>

<li>Четвертый элемент списка</li>

<li>Пятый элемент списка</li>

</ul>

[/php]

И мы получим вот такой многоуровневый список, когда браузер сформирует HTML страницу:

Отображение многоуровневого HTML списка в браузере

Отображение многоуровневого HTML списка в браузере

Но это не всё, мы можем объединять вместе маркированные и нумерованные HTML списки в многоуровневые, давайте добавим в наш HTML документ следующий код:

[php]

<h2>Объединеяем маркированный и нумерованный HTML списки</h2>

<ol>

<li>Первый элемент списка</li>

<li>Второй элемент списка

<ul>

<li>Первый элемент вложенного списка</li>

<li>Второй элемент вложенного списка</li>

<li>Третий элемент вложенного списка</li>

</ul>

</li>

<li>Третий элемент списка</li>

<li>Четвертый элемент списка</li>

<li>Пятый элемент списка</li>

</ol>

[/php]

И посмотрим: какой многоуровневый список получится в браузере:

Отображение объединенного HTML списка в браузере

Отображение объединенного HTML списка в браузере

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

Список меню в HTML. HTML атрибуты списка меню.

Список меню запрещен стандартом HTML 4.01, поэтому будьте внимательны, когда вы указываете тип документа в тэге DOCTYPE. Но стандарт HTML 5 допускает и даже поощряет использование списка меню: поисковые системы и специальные браузеры «понимают», что данный блок ссылок, это не просто ссылки, а именно меню сайта, и относятся к такому блоку несколько по-другому.

Для списка меню в HTML доступны два уникальных атрибута: label и type. Первый атрибут позволяет задать имя меню или, как еще говорят видимую метку списка меню. Второй атрибут позволяет изменить тип списка меню, для него доступно три значения:

  1. Значение context. Позволяет создавать контекстное меню для любого HTML элемента на странице.
  2. Значение toolbar позволяет создавать меню в виде панели инструментов.
  3. Значение list. Позволяет отображать список меню так, как будто это обычный HTML список. Отметим, что это значение по умолчанию.

Более подробно про тэг <menu> и HTML список меню мы поговорим, когда начнем рассматривать возможности HTML 5.

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


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

This article has 2 comments

  1. Marry Reply

    Очень подробно пишите и очень понятно, только начала изучать язык HTML и хотелось бы у вас спросить... Будут ли в дальнейшем публикации о том, как из простого HTML списка сделать меню на сайте?

  2. Alex666 Reply

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

Leave a Comment

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

Loading Disqus Comments ...