Для чего нужен атрибут name и когда его следует использовать? (не относится к полям формы)

Я понимаю, что он используется для обозначения имен полей формы, когда приходит время для отправки на сервер. Но как насчет контекста рамок и форм? @targets?

Может ли кто-нибудь дать объяснение того, что происходит со следующей схемой?

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

<form target=foo></form

...а потом...

<iframe name=foo />

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

Благодарю.

2 ответа

Решение

Нет более глубокого объяснения того, как какой-то атрибут используется для разных элементов, кроме его определения для каждого элемента. Если элемент foo имеет атрибут zap и элемент bar имеет атрибут zap затем эти атрибуты имеют только одно имя, если, конечно, они не имеют одинакового значения. Атрибуты могут иметь совершенно разные значения, и они могут принимать совершенно разные значения; все зависит от их определений.

На практике разработчики HTML старались быть несколько последовательными, чтобы имя атрибута отражало его значение. Например, align атрибут имеет частично одинаковое значение для разных элементов (например, align за h1 означает так же, как align за h2), частично аналогичные значения (например, align за h1 похож на align за table, но не то же самое). Но например type атрибут для ol не имеет ничего общего с type за script,

Индекс атрибутов в спецификации HTML 4.01 дает обзор таких проблем. Там вы также можете увидеть name атрибуты для различных элементов суммированы.

В HTML 4.01 name был объявлен для applet, но только потому, что сам элемент устарел. Но для form а также a Проза в спецификации гласит: "Примечание. Этот атрибут был включен для обратной совместимости. Приложения должны использовать атрибут id для идентификации элементов ". Это или подобные утверждения часто неправильно понимаются как относящиеся к name элементы в целом; это было бы все неправильно, и даже абсурдно.

name Атрибут необходим для элементов поля формы, чтобы они вносили вклад в данные формы, поскольку вклады основаны на его атрибуте (и значении элемента). Это также важно в одном из двух типов meta элемент, а также в iframe элемент, если вы хотите указать такой элемент как "контекст просмотра", на который нужно ссылаться в target приписывать.

В этом случае target=foo говорит, что форма должна быть представлена ​​в iframe с атрибутом name foo, Это загрузит результаты отправки формы в этот iframe.

Другие вопросы по тегам