Спецификация HTML 4.01

         

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



12.2.3 Якоря с атрибутом 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&#xfc;rst является верным значением атрибута name, как и D&uuml;rst. Атрибут id, однако, не может содержать символьных мнемоник.

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

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


Содержание  Назад  Вперед