Как сделать отступ от края в html. Форматирование HTML-абзаца. Как убрать отступы вокруг формы

Списки активно используются для автоматической нумерации блоков контента. Однако при использовании вложенных списков нельзя получить нумерацию подпунктов типа 1.1, 1.2, 1.3, поскольку каждый список будет независимым. Но то, что нельзя в ШТМЛ, можно возложить на стили.

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

    , а элементы списка формируются тегами
  1. . Вложенный список также начинается с
      , но этот тег должен располагаться внутри контейнера
    1. , именно так соблюдается корректность синтаксиса (пример 1).

      Пример 1. Обычный вложенный список





      Вложенный список



      1. Пункт 1

        1. Подпункт 1.1

        2. Подпункт 1.2

        3. Подпункт 1.3



      2. Пункт 2

        1. Подпункт 2.1

        2. Подпункт 2.2





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

      Рис. 1. Вид вложенного списка

      Теперь уберем встроенную нумерацию списков и создадим ее по новой, но уже в том виде, что нам требуется. Для этого понадобится три стилевых атрибута: counter-reset , counter-increment и content .

      counter-reset — задает некоторую переменную, которая будет хранить значение счетчика;

      counter-increment — увеличивает или уменьшает значение счетчика на указанное число;

      content — выводит значение счетчика при использовании аргумента counter(переменная) . Работает совместно с псевдоэлементами after или before .

      Для списка первого уровня переменную счетчика назовем list1 , а для второго уровня — list2 . Тогда инициация счетчиков для списков будет следующей.

      OL { counter-reset: list1; } /* Список первого уровня */
      OL OL { counter-reset: list2; } /* Список второго уровня*/

      В данном случае отделить вложенный список от внешнего помогают конконтентные селекторы. Конструкция OL OL означает применять стиль только к тегу

        , но только когда он располагается внутри другого тега
          .

          Увеличение значения счетчика происходит через селектор OL LI:before , к которому добавляются стилевые атрибуты counter-increment и content . Атрибут counter-increment со значением list1 повышает значение этого счетчика на единицу, а content: counter(list1) ". " выводит значение счетчика перед пунктом списка. Эти атрибуты работают в паре, поэтому включать их надо одновременно.

          OL LI:before { /* Список первого уровня */
          counter-increment: list1;
          /* Выводим значение в виде 1., 2.*/
          }
          OL OL LI:before { /* Список второго уровня */
          counter-increment: list2; /* Увеличиваем значение счетчика */
          }

          Для вложенного списка вновь применяем конконтентные селекторы (OL OL ) и одновременно используем вывод счетчика list1 и list2 , в этом случае мы и получим нумерацию нужного нам вида.

          Окончательный код приведен в примере 2.

          Пример 2. Вложенные списки с автонумерацией





          Вложенный список




          1. Пункт

            1. Подпункт

            2. Подпункт

            3. Подпункт



          2. Пункт

            1. Подпункт

            2. Подпункт





          Результат данного примера показан на рис. 2.

          Рис. 2. Вид автонумерации списка в браузере Опера

          Замечание

          Приведенный пример не работает в браузере Internet Эксплорер до 7 версии включительно, поскольку он не поддерживает ни одно из приведенных стилевых свойств.

          Поскольку браузер Internet Эксплорер не поддерживает множество интересных стилевых атрибутов, специально для него обычную нумерацию в списках следует оставить нетронутой. Для этого дастаткова убрать list-style-type: none . Но это также затронет и другие браузеры, в которых пример работает корректно, поэтому придется применить хаком — так имеется ввиду прием, когда разным браузерам дается разный стилевой код. Например, можно применить тегом !important . При добавлении !important к значению стилевого атрибута его важность повышается. Если заново определить значение того же атрибута без !important , он будет игнорироваться браузерами. Но только не в Intenet Explorer версии 6 и ниже.

          LI {
          list-style-type: none !important; /* Убираем нумерацию в браузерах Опера, Safari, Файер фох */
          list-style-type: decimal; /* Оставляем нумерацию в браузере ИЕ6 и ниже */
          }

          Заменяя этим кoдам строку с селектором LI в примере 2 получим вложенный список корректно работающий во всех браузерах.

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

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

          Каждое определение и термин является группой определения (или группой имя-значение). Можно иметь любое требуемое количество групп определений , но в каждой группе должны быть как минимум один термин и как минимум одно определение . Нельзя иметь термин без определения или определение без термина.

          Можно ассоциировать более одного термина с одним определением , или наоборот. Например, термин "кофе" может иметь несколько значений, и можно показать их одно за другим:

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

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

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

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

          Поэтому списки определений используют одну пару элементов

          , охватывающую группы тегов
          и
          . Необходимо располагать парами как минимум одну группу тегов
          с одной группой
          ; теги
          должны всегда быть первыми по порядку.

          Простой список определений одного термина с одним определением будет выглядеть следующим образом:

          Термин
          Определение термина
          Термин
          Определение термина
          Термин
          Определение термина

          Который выводится следующим образом:

          Термин Определение термина Термин Определение термина Термин Определение термина

          В этом примере мы соединяем более одного термина с определением и наоборот:

          Термин
          Определение термина
          Термин
          Термин
          Определение которое применяется к обоим предыдущим терминам
          Термин, который может иметь оба следующие определения
          Одно определение термина
          Другое определение термина

          Что будет представлено следующим образом:

          Термин Определение термина Термин Термин Определение которое применяется к обоим предыдущим терминам Термин, который может иметь оба следующие определения Одно определение термина Другое определение термина

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

          Выбор типа списка

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

          1. Определяются термины (или соединяются другие пары имя/значение)?
            • Если да, используйте список определений .
            • Если нет, не используйте список определений - перейдите к следующему вопросу.
          2. Важен ли порядок элементов списка?
            • Если да, используйте упорядоченный список.
            • Если нет, используйте неупорядоченный список.

          Различие между списками HTML и текстом

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

          • Если потребуется изменить порядок элементов списка в упорядоченном списке, то вы просто перемещаете их в коде HTML . Если числа будут написаны вручную, то придется все просмотреть и изменить число каждого элемента, чтобы исправить порядок - что достаточно скучно, по крайней мере!
          • Использование списка HTML позволяет правильно оформить стиль списка. Если используется просто большой текст, то окажется значительно труднее оформить стиль отдельных элементов каким-либо более-менее полезным образом.
          • Использование списка HTML создает для контента подходящую семантическую структуру, а не просто "спискообразный" визуальный эффект. Это имеет важные преимущества, так как позволяет считывателям экрана сообщить пользователям с недостатками зрения, что они читают список, а не просто прочитать путаную смесь текста и чисел.

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

          Вложенные списки

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

          1. Глава один 1. Раздел один 2. Раздел два 3. Раздел три 2. Глава два 3. Глава три

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

          1. Глава один
            1. Раздел один
            2. Раздел два
            3. Раздел три
          2. Глава два
          3. Глава три

          Отметим, что вложенный список начинается после элемента

        1. и текста, содержащего список элемента ("Глава один"); а заканчивается перед элементом
        2. , содержащего список элемента. Вложенные списки часто формируют основу для навигационного меню Web -сайта, так как они являются удобным способом определения структуры Web -сайта.

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

          Пошаговый пример

          Давайте рассмотрим пошаговый пример, чтобы собрать все это вместе. Рассмотрим следующий сценарий :

          Мы создаем небольшой Web - сайт для Кулинарной школы. На основной странице мы покажем список классифицированных рецептов, связанный ссылками со страницами рецептов. Каждая страница рецепта перечисляет требуемые ингредиенты, замечания по этим ингредиентам и метод приготовления. Тремя категориями являются "Cakes" (включающая рецепты для "Plain Sponge ", "Chocolate Cake" и "Apple Tea Cake"); "Biscuits" (включающая рецепты "ANZAC Biscuits", " Jam Drops" и "Melting Moments "); и "Quickbreads" (включающая рецепты для "Damper" и "Scones"). Клиенту все равно в каком порядке будут выводиться категории и рецепты, он просто хочет, чтобы люди понимали, какие позиции являются категориями, а какие являются рецептами.Имеется три категории рецептов для представления, и порядок не важен - для этого больше всего подходит неупорядоченный список, поэтому добавим на страницу следующий код:

          Recipes

          • Cakes
          • Biscuits
          • Quickbreads

          Отступ для элементов li делает код удобнее для чтения, но не является обязательным.

          Теперь нужно добавить рецепты в качестве подпунктов, например, "Plain Sponge ", "Chocolate Cake" и "Apple Tea Cake" являются частью категории "Cakes". Для этого необходимо в каждой позиции списка создать вложенный список. Так как порядок неважен, то снова подходит неупорядоченный список. Чтобы упростить материал для учебного руководства, все рецепты можно соединить с одной страницей рецептов:

          Recipes

          • Cakes
            • Plain Sponge
            • Chocolate Cake
            • Apple Tea Cake
          • Biscuits
            • ANZAC Biscuits
            • Jam Drops
            • Melting Moments
          • Breads/quickbreads
            • Damper
            • Scones

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

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

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

          Обычный нумерованный можно создать при помощи следующих тегов:

        3. Первый пункт списка
        4. Второй пункт списка
        5. Третий пункт списка
        6. Простые списки выглядят вот так

          Согласно стандартам, каждый пункт списка должен быть внутри открывающего и закрывающего тега li. Но если вы не поставите закрывающий тег, то результат будет точно таким же. Обработчик весьма умный. Во время преобразования списка он анализирует открывающие теги. Если он видит новый

        7. , то автоматически перед ним ставит
        8. .

          Таким образом, списки можно делать так, как показано ниже.

          Но с точки зрения профессионалов это некорректно.

          Ненумерованные (или же маркерные) списки создаются точно так же, только вместо тега ol, пишется ul.

          В нет цифр или букв - только различные символы, которые называются маркерами.

          Многоуровневый нумерованный список HTML

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

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

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

          Для нумерованных указываем алфавит или тип цифр, а для остальных случаев - тип маркера.

          Если использовать специальный HTML-тег, нумерованный список может стать любым, каким вы хотите.

          Можно указать атрибут type с любым значением из таблицы. Или в классе стиля css указать list-style-type с желаемым типом сортировки.

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

          Для нумерованных списков нужно использовать следующие варианты:

          • 1 - арабские цифры;
          • A - заглавные ;
          • a - строчные латинские буквы;
          • I - заглавные римские цифры;
          • i - строчные римские цифры.

          По умолчанию всегда используется список с То есть, если вы ничего не указали, это равносильно type="1".

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

          Кроме этого, можно сделать вывод в обратном порядке. Для этого нужно написать reversed.

          Оформление списков

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

          Вот примеры красивых списков.

          Как видно из примера, можно изменять внешний вид нумерации и самих элементов.

          Создать обычный список можно вот так.

          В стилях css нужно указать оформление для тегов ol. Обратите внимание, что в этом случае настройки будут применены ко всем спискам всего сайта, где используется этот файл стилей.

          Рассмотрим сначала вариант с круглым оформлением списка. Вернитесь к коду списка. Там указан класс rounded-list. Вот именно с этим классом нужно повозиться, чтобы сделать такую красоту. Назвать класс вы можете как хотите.

          Теперь рассмотрим квадратное оформление.

          Стили весьма похожи. Разница в том, что в первом случае происходит округление элемента посредством возможностей css.

          Профессиональный верстальщик должен предвидеть и понимать, что не все пользователи используют современные компьютеры. Не у всех установлены Windows 7, 8, 10. Существует процент пользователей, кто до сих пор сидит на Windows XP и использует старые версии браузера Internet Explorer.

          Как правило, почти все современные дизайнерские улучшения элементов ими не поддерживаются. Пользователю будет казаться, что над дизайном сайта вообще не работали. Что всё съехало. Элементы наезжают друг на друга. Чтобы этого избежать, нужно просчитывать все варианты.

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

          Делайте что-то подходящее для всех или учитывайте все варианты браузеров.

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

            , а каждый пункт списка начинается с тега
          • , как показано ниже.

            • Первый пункт
            • Второй пункт
            • Третий пункт

            В списке непременно должен присутствовать закрывающий тег

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

          В примере 11.1 приведен код HTML для добавления маркированного списка на веб-странице.

          Пример 11.1. Создание маркированного списка

          Маркированный список


          • Чебурашка
          • Крокодил Гена
          • Шапокляк
          • Крыса Лариса

          Результат данного примера показан на рис. 11.1.

          Рис. 11.1. Вид маркированного списка

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

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

            . Допустимые значения приведены в табл. 11.1

            Табл. 11.1. Стили маркеров списка
            Тип списка Код HTML Пример
            Список с маркерами в виде круга

            • Первый
            • Второй
            • Третий
            Список с маркерами в виде окружности

            • Первый
            • Второй
            • Третий
            Список с квадратными маркерами

            • Первый
            • Второй
            • Третий

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

            Создание списка с квадратными маркерами показано в примере 11.2.

            Пример 11.2. Вид маркеров

            Маркированный список

            Изменение убеждений

            • изменение религиозной веры (на выбор: буддизм, конфуцианство, индуизм). Специальное предложение - иудаизм и мусульманство вместе;
            • изменение веры в непогрешимость любимой партии;
            • убеждение в том, что инопланетяне существуют;
            • предпочтение политического строя, как самого лучшего в своем роде (на выбор: феодализм, социализм, коммунизм, капитализм).

            Результат данного примера показан на рис. 11.2.

            В языке HTML предусмотрен специальный набор тегов для представления информации в виде списков. Списки являются одним из наиболее часто употребляемых форм представления данных как в электронных документах, так и в печатных. Со списками мы встречаемся практически ежедневно, - это может быть список необходимых покупок в магазине, учеников в классе или просто дел, которые необходимо выполнить. Возможность организации списковых структур имеется во многих текстовых редакторах, в частности, мощный текстовый процессор Microsoft Word обладает удобными средствами форматирования списков различного вида (возможности создания HTML-списков при помощи Microsoft Word обсуждаются в главе 8). Приведем ряд случаев, для которых использование списков довольно удобно:

            • Объединение фрагментов информации в единую структуру для придания удобочитаемого вида.
            • Описание сложных пошаговых процессов.
            • Расположение информации в стиле оглавления, пункты которого указывают на соответствующие разделы документа.

            Заметим, что приведенные выше пункты как раз и организованы в виде списковой структуры.

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

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

                Маркированный список

                Одним из типов списков, реализованных в языке HTML, является маркированный список. Иначе списки такого типа называют ненумерованными или

                неупорядоченными. Последнее название часто используется как формальный перевод названия соответствующего тега

                  , с помощью которого и организуются списки такого типа в HTML-документах (UL - Unordered List, неупорядоченный список).

                  В маркированном списке для выделения его элементов используются специальные символы, называемые маркерами списка (часто их называют буллетами, что является формальным озвучением английского термина bullet - пуля). Вид маркеров списка определяется браузером, причем при создании вложенных списков браузеры автоматически разнообразят вид маркеров различного уровня вложенности.

                  Тэги

                    и <LI >

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


                    .

                    Каждый элемент списка должен начинаться тэгом

                  • (LI - List Item, элемент списка). Тег
                  • не нуждается в соответствующем закрывающем тэге, хотя его наличие в принципе не возбраняется. Браузеры обычно при отображении документа начинают каждый новый элемент списка с новой строчки.

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

                    Пример маркированного списка

                      Знаки зодиака:

                      • Овен

                      • Телец

                      • Близнецы

                      • Рак

                      • Лев

                      • Дева

                      • Весы

                      • Скорпион

                      • Стрелец

                      • К озерог

                      • Водолей

                      • Рыбы

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

                    Заметим, что кроме элементов списка, отмечаемых тэгом

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

                    Примечание

                    В некоторых учебниках по языку HTML встречается указание, что для задания заголовка списка следует применять тэг-контейнер (LH - List Header, заголовок списка). В настоящее время этот тег не распознается ни одним из распространенных браузеров и не входит в спецификацию HTML. Таким образом, его применение становится бессмысленным, хотя и не приведет к каким-либо ошибкам.

                    В тэге

                      могут быть указаны два параметра: COMPACT и TYPE.

                      Параметр COMPACT записывается без значений и применяется для указания браузеру, что данный список следует выводить в компактном виде. Например, может быть уменьшен шрифт или расстояние между строчками списка и т. д.

                      Примечание

                      В настоящее время наличие параметра COMPACT в тэге

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

                        Параметр TYPE может принимать следующие значения: disc, circle и square. Этот параметр используется для принудительного задания вида маркеров списка. Конкретный вид маркера будет зависеть от используемого браузера. Типичными вариантами отображения являются следующие:

                        TYPE = disc - маркеры отображаются закрашенными кружками; TYPE = circle - маркеры отображаются не закрашенными кружками; TYPE = square - маркеры отображаются закрашенными квадратиками. Пример записи:

                          .

                          Значением, используемым по умолчанию, является TYPE = disc. Для вложенных маркированных списков на первом уровне по умолчанию используется значение disc, на втором - circle, на третьем и далее - square. Именно так делается в последних версиях браузеров Netscape и Internet Explorer. Заметим, что иные браузеры могут иначе отображать маркеры. Например, в спецификации HTML 4.0 для вида маркера, отображаемого при значении TYPE = square, указывается незакрашенный квадратик (square outline).

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

                        • .

                          Пример записи:

                        • .

                          Примечание

                          Браузеры по-разному интерпретируют указание вида маркера для отдельного элемента списка. Браузер Netscape изменяет вид маркера для данного и всех последующих, пока не встретится очередное переопределение вида маркера. Браузер Internet Explorer изменяет вид маркера только для данного элемента.

                          Графические маркеры списка

                          В качестве маркеров списка можно использовать графические изображения, что широко применяется для создания привлекательных, красиво оформленных HTML-документов. На самом деле такая возможность не предоставляется непосредственно языком HTML, а реализуется несколько искусственно. Это вовсе не означает, что так делать не рекомендуется или предосудительно, а лишь означает, что здесь не будут применяться никакие специальные языковые конструкции HTML.

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

                            (как, впрочем, и теги списков других типов, рассматриваемых ниже) выполняет единственную задачу - указывает браузеру, что вся информация, располагаемая после данного тега должна отображаться со сдвигом вправо (отступом) на некоторую величину. Теги
                          • , указывающие на отдельные элементы списка, обеспечивают вывод стандартных маркеров элементов списка.

                            Если же нам требуется построить список с графическими маркерами, то можно вообще обойтись без тегов

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

                            Или принудительного перевода строки
                            . Пример реализации списка с графическими маркерами, отображение которого представлено на рис. 2.2, показан ниже:

                            Маркированный список

                              Знаки зодиака:

                                Овен

                                Телец

                                Близнeцы

                                Paк

                                Лeв

                                Дева

                                Весы

                                Скорпион

                                Cтpeлeц

                                Козерог

                                Водолей

                                Рыбы

                            Рис. 2.2. Маркированный список с графическими маркерами

                            В приведенном примере в качестве маркера элементов списка используется графический файл Green_ball.gif. Заметим, что использование графики на HTML-страницах может значительно увеличить объем передаваемой информации. Однако в данном случае это увеличение крайне незначительно. Здесь для всех маркеров используется один и тот же файл,

                            который будет передан только один раз. Размеры файла, содержащего маленькое изображение, также крайне незначительны.

                            Примечание

                            Методы создания списков с графическими маркерами обсуждаются в свою очередь в главе 8 .

                            Нумерованный список

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

                              , с помощью которого и организуются списки такого типа в HTML-документах (OL - Ordered List, упорядоченный список).

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

                              Тэги

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

                                Как и для маркированного списка, каждый элемент нумерованного списка должен начинаться тэгом

                              2. .

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

                                Пример нумерованного списка

                                  Наиболее яркие звезды, видимые с Земли:

                                  • Сириус

                                  • К анопус

                                  • Арктур

                                  • Альфа Центавра

                                  • Вега

                                  • К апелла

                                  • Ригель

                                  • Процион

                                  • Ахернар

                                  • Бета Центавра

                                  • Ветельгейзе

                                  • Альдебаран


                                    . . .

                                  • Мицар


                                    . . .

                                  • Пoляpнaя

                                Рис. 2.З. Нумерованный список

                                В тэге

                                  могут быть указаны следующие параметры: COMPACT, TYPE и START.

                                  Параметр COMPACT имеет тот же смысл, что и у маркированных списков. Параметр TYPE используется для задания вида нумерации списка. Может принимать следующие значения:

                                  TYPE = А - задает маркеры в виде прописных латинских букв;

                                  TYPE = а - задает маркеры в виде строчных латинских букв;

                                  TYPE = I - задает маркеры в виде больших римских цифр;

                                  TYPE = i - задает маркеры в виде маленьких римских цифр;

                                  TYPE = 1 - задает маркеры в виде арабских цифр.

                                  По умолчанию всегда используется значение TYPE = 1, т. е. нумерация при помощи арабских цифр. Это касается и вложенных нумерованных списков. Здесь, в отличие от маркированных списков, браузеры по умолчанию не делают различной нумерацию на различных уровнях вложенности списков. Заметим, что после номера элемента списка всегда дополнительно выводится знак "точка".

                                  Параметр TYPE с теми же значениями может употребляться для указания вила нумерации отдельных элементов списка. Для этого параметр TYPE с соответствующим значением разрешено указывать в тэге элемента списка

                                1. .

                                  Пример записи:

                                2. .

                                  Параметр START тега

                                    позволяет начать нумерацию списка не с единицы. В качестве значения параметра START всегда должно указываться натуральное число, вне зависимости от вида нумерации списка. Приведем пример:

                                      .

                                      Такая запись определяет нумерацию списка с прописной латинской буквы "E". Для других видов нумерации запись START=5 задаст нумерацию, соответственно, с числа "5", римской цифры "V" и т. д.

                                      Изменение вида нумерации списка и значений номеров допустимо производи ть и для любого элемента списка. Тег

                                    1. для нумерованных списков разрешает использовать параметры TYPE и VALUE. Параметр TYPE может прини мать такие же значения, как и для тега
                                        .

                                        П ример записи:

                                      1. .

                                        Примечание

                                        Браузеры по-разному интерпретируют указание вида нумерации для отдельного элемента списка. Браузер Netscape изменяет вид нумерации для данного элемента и всех последующих, пока не встретится очередное переопределение. Браузер Internet Explorer изменяет вид номера только для данного элемента.

                                        З начение параметра VALUE тега

                                      2. - позволяет изменить номер данного элем ента списка. При этом изменяется нумерация и всех последующих элементов. Типичным применением являются списки с пропуском некоторых эл ементов. Пример такого списка был приведен выше (рис. 2.3). В нем дается уп орядоченный список наиболее ярких звезд, в котором на 58 и 75 местах р асположены звезды, хорошо видимые в наших широтах (Мицар - наиболее яркая звезда созвездия Большая Медведица, а Полярная звезда - Малой Медведицы).

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

                                      3. нет никаких данных. Пример такого рода можно использовать в качестве таблицы соответствия между записью чисел арабскими и римскими цифрами. Оказывается, что любой браузер, поддерживающий списки, можно использовать в качестве генератора такой таблицы (рис. 2.4), стоит лишь набрать приводимый HTML-код. Нумерация римскими цифрами правильно работает вплоть до значения 3999. Изучая правый столбец, можно понять, как выполняется нумерация латинскими буквами. По исчерпании однобуквенной нумерации (от А до Z) в качестве следующего номера берется первый двухбуквенный номер - АА и т. д.

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


                                          1. . . .


                                        1. . . .


                                        1. . . .

                                        Рис. 2.4. Различные типы нумерации HTML-списков

                                        Список определений

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

                                        Списки определений задаются с помощью тэга-контейнера

                                        (Definition List). Внутри контейнера тэгом
                                        (Definition Term) помечается определяемый термин, а тэгом
                                        (Definition Description) - абзац с его определением. Для тегов
                                        и
                                        можно не записывать соответствующие закрывающие тэги.

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

                                        Термин

                                        Определение термина

                                        В тексте после тега

                                        не могут использоваться элементы уровня блока, такие как, например, теги абзаца

                                        Или заголовков

                                        -

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

                                        В тэге

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

                                        Приведем пример HTML-документа, в котором использован список определений:

                                        Пример списка определений

                                        Классификация типичных темпераментов человека,
                                        основанная

                                        на воззрениях Гиппократа

                                          Флегматик

                                          Пассивный, очень трудоспособный, медленно приспосабливающийся;
                                          настроение устойчивое, мало поддается внешнему влиянию;
                                          вялость эмоциональных реакций и медлительность в волевой деятельности

                                          Сангвиник

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

                                          Холерик

                                          Активный, очень энергичный, настойчивый;
                                          порывистость и сила эмоциональных реакций, бурные волевые проявления

                                          Меланхолик

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

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

                                        Рис. 2.5. Список определений (напоминает группу статей в словаре)

                                        Списки типа

                                        и

                                        Списки типа

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

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

                                          Для списков типа

                                          планировалось ввести ограничение на«длину текста элемента списка (24 символа). Такое ограничение позволило бы выводить

                                          списки типа

                                          в виде, подобном выводу списка каталогов в операционных системах UNIX и MS-DOS при использовании ключа /W (в несколько колонок). Кроме этого, для элементов списков такого типа не отображались маркеры.

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

                                            .

                                            Вложенные списки

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

                                            Ниже приводится HTML-код документа с вложенными списками, отображение которого показано на рис. 2.6. В этом примере в каждый элемент маркированного списка вложен свой нумерованный список.

                                            Пример вложенного списка

                                              Спутники некоторых планет

                                            • Земпя

                                                1. Луна

                                            • Mapc

                                                1. Фобос

                                                2. Деймос

                                            • Уран

                                                1. Ариэль

                                                2. Умбриэль

                                                3. Титания

                                                4. Оберон

                                                5. Миранда

                                            • Нептун

                                                1. Тритон

                                                2. Нереида




Top