Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Введение в HTML.doc
Скачиваний:
34
Добавлен:
21.03.2016
Размер:
957.44 Кб
Скачать

Синтаксис имён якорей

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

  • Уникальность:Имена якорей должны быть уникальны в пределах документа.

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

  • Совпадение строк: Сравнение идентификаторов фрагмента и имён якорей должно выполняться с учётом регистра символов.

Таким образом, следующий пример корректен в отношении совпадения строк и должен рассматриваться ПА как совпадение:

<P><A href="#xxx">...</A>

...документ...

<P><A name="xxx">...</A>

НЕВЕРНОЕ ИСПОЛЬЗОВАНИЕ:

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

<P><A name="xxx">...</A>

<P><A name="XXX">...</A>

Хотя следующий отрывок HTML верен, поведение ПА в этом случае не определено; некоторые ПА могут (некорректно) рассматривать это как совпадение, а другие - нет.

<P><A href="#xxx">...</A>

...документ...

<P><A name="XXX">...</A>

Имена якорей должны быть указаны в символах ASCII. См. в приложении дополнительную информацию о не-ASCII символах в значениях атрибутов URI.

Вложение ссылок не допускается

Ссылки и якоря, определённые элементом A, не могут вкладываться; элемент A не должен содержать других элементов A.

Поскольку ОТД определяет элемент LINK как пустой, элементы LINK также не могут вкладываться.

Якоря с атрибутом id

Атрибут id может использоваться для создания якоря в начальном теге любого элемента (включая элемент A).

Этот пример иллюстрирует использование атрибута id для размещения якоря в элементе H2. Якорь связан посредством элемента A.

Об этом Вы можете узнать больше в <A href="#section2">Section Two</A>.

...позже в документе

<H2 id="section2">Раздел 2</H2>

...позже в документе

<P>Смотрите <A href="#section2">Раздел 2</A> выше по тексту.

В следующем примере якорь назначения именован с помощью атрибута id:

I just returned from vacation! Here's a

<A id="anchor-two">photo of my family at the lake.</A>.

Атрибуты id и name используют общее пространство имён. Это означает, что они не могут одновременно определять якорь с одним именем в одном и том же документе. Допускается использовать оба атрибута для определения уникальных идентификаторов следующих элементов: A, APPLET, FORM, FRAME, IFRAME, IMG и MAP. Если оба атрибута использованы в одном элементе, их значения должны быть идентичны.

ПРИМЕР НЕПРАВИЛЬНОГО ИСПОЛЬЗОВАНИЯ:

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

<A href="#a1">...</A>

...

<H1 id="a1">

...страницы документа...

<A name="a1"></A>

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

<P><A name="a1" id="a1" href="#a1">...</A>

В соответствии со своей спецификацией в ОТД HTML, атрибут name может содержать символьные мнемоники. Так, значение Dürst является верным значением атрибута name, как и Dürst. Атрибут id, однако, не может содержать символьных мнемоник.

Использовать id или name?Авторы должны учитывать следующие обстоятельства при решении вопроса использования для именования якоря id или name:

  • Атрибут id может действовать не только как имя якоря (напр., селектор таблиц стилей, идентификатор процесса и т.д.).

  • некоторые старые ПА не поддерживают якоря, созданные атрибутом id.

  • Атрибут name допускает расширенные имена якорей (с мнемониками).