Элемент LABEL
<!ELEMENT LABEL - - (%inline;)* -(LABEL) -- текст лэйбла элемента формы --> <!ATTLIST LABEL %attrs; -- %coreattrs, %i18n, %events -- for IDREF #ПРЕДПОЛАГАЕТСЯ -- соответствует значению ID поля -- accesskey %Character; #ПРЕДПОЛАГАЕТСЯ -- символ быстрого доступа -- onfocus %Script; #ПРЕДПОЛАГАЕТСЯ -- элемент получил фокус -- onblur %Script; #ПРЕДПОЛАГАЕТСЯ -- элемент потерял фокус -- >
Начальный тег: необходим, Конечный тег: необходим
Определение атрибутов
for = idref [CS] Этот атрибут явно ассоциирует лэйбл с другим ЭУ. При наличии, значение этого атрибута должно быть тем же, что и значение атрибута id другого ЭУ этого же документа. При отсутствии, определяемая ссылка ассоциируется с содержимым элемента.
Атрибуты, определённые в другом месте
id, class (идентификаторы документа) lang (язык), dir (направление текста) title (название элемента) style (название стиля) accesskey (символ быстрого доступа) onfocus, onblur, onclick, ondblclick, onmousedown, onmouseup, onmouseover, onmousemove, onmouseout, onkeypress, onkeydown, onkeyup (внутренние события)
Элемент LABEL может использоваться для присоединения информации к ЭУ. Каждый элемент LABEL ассоциирован только с одним ЭУ формы.
Атрибут for явно ассоциирует лэйбл с другим ЭУ: значение атрибута for должно быть тем же, что и атрибута id ассоциированного ЭУ. Более, чем один LABEL
может быть ассоциирован с элементом путём создания множественных ссылок атрибута for.
В этом примере создаётся таблица, для выравнивания двух ЭУ text
и ассоциированных с ними лэйблов. Каждый лэйбл ассоциируется только с одним ЭУ text:
<FORM action="..." method="post"> <TABLE> <TR> <TD><LABEL for="fname">First Name</LABEL> <TD><INPUT type="text" name="firstname" id="fname"> <TR> <TD><LABEL for="lname">Last Name</LABEL> <TD><INPUT type="text" name="lastname" id="lname"> </TABLE> </FORM>
Этот пример дополняет предыдущий включением элементов LABEL:
<FORM action="http://somesite.com/prog/adduser" method="post"> <P> <LABEL for="firstname">First name: </LABEL> <INPUT type="text" id="firstname"><BR> <LABEL for="lastname">Last name: </LABEL> <INPUT type="text" id="lastname"><BR> <LABEL for="email">email: </LABEL> <INPUT type="text" id="email"><BR> <INPUT type="radio" name="sex" value="Male"> Male<BR> <INPUT type="radio" name="sex" value="Female"> Female<BR> <INPUT type="submit" value="Send"> <INPUT type="reset"> </P> </FORM>
Чтобы ассоциировать лэйбл с другим ЭУ неявно, ЭУ должен находиться внутри содержимого элемента LABEL. В этом случае LABEL может содержать только один элемент управления. Лэйбл может находиться перед или после ассоциированного ЭУ.
В этом примере мы неявно ассоциируем два лэйбла с двумя ЭУ text:
<FORM action="..." method="post"> <P> <LABEL> First Name <INPUT type="text" name="firstname"> </LABEL> <LABEL> <INPUT type="text" name="lastname"> Last Name </LABEL> </P> </FORM>
Учтите. что эта техника не может использоваться, если для вывода используется таблица, и лэйбл находится в одной ячейке, а ассоциированный ЭУ - в другой ячейке.
Если LABEL
получает фокус/focus, он передаёт фокус ассоциированному ЭУ. См. ниже раздел о клавишах быстрого доступа/access keys.
Лэйблы могут рассматриваться ПА различными способами (напр., визуально, речевым синтезатором и т.д.)