Заранее выбранные варианты
Варианты могут быть выбраны заранее. Агенты пользователей должны определять, какие варианты выбраны, следующим образом:
<!ELEMENT - - (OPTION)+ -- группа вариантов --> <!ATTLIST OPTGROUP -- , , -- (disabled) #IMPLIED -- недоступно в данном контексте -- #REQUIRED - использование в иерархических меню -- >
Начальный тег: обязателен, Конечный тег: обязателен
Определения атрибутов элемента OPTGROUP
label =
Метка группы вариантов.
Атрибуты, определяемые в другом месте
(), ()
()
()
()
()
Примечание. Разработчикам рекомендуется иметь в виду, что в будущих версиях HTML механизм группировки может быть расширен для подержки вложенных групп (т.е. элементы смогут быть вложенными). Это позволит авторам представлять более сложную иерархию вариантов.
<!ELEMENT - O (#PCDATA) -- вариант выбора --> <!ATTLIST OPTION -- , , -- (selected) #IMPLIED (disabled) #IMPLIED -- недоступно в данном контексте -- #IMPLIED -- используется в иерархических меню -- #IMPLIED -- по умолчанию - содержимое элемента -- >
Начальный тег: обязателен, Конечный тег: optional
Определения атрибутов элемента OPTION
selected
Если этот логический атрибут установлен, этот вариант выбран заранее.
value =
Определяет управляющего элемента. Если этот атрибут не установлен, устанавливается равным содержимому элемента .
label =
Позволяет авторам определить более короткую метку для варианта, чем содержимое элемента . Если этот атрибут определен, агенты пользователей должны использовать его значение вместо содержимого элемента в качестве метки варианта.
Атрибуты, определяемые в другом месте
(), ()
()
()
()
()
При представлении пункта меню агенты пользователей должны использовать значение атрибута элемента в качестве выбора. Если этот атрибут не определен, агенты пользователей должны использовать содержимое элемента .
Атрибут элемента определяет метку группы вариантов.
В этом примере мы создадим меню, позволяющее пользователю выбрать, какую из семи программ установить. Первая и вторая программы выбраны заранее, но пользователь может отменить их выбор. Остальные программы заранее не выбраны. Атрибут определяет, что меню должно занимать 4 строки, хотя пользователь и имеет 7 вариантов. Доступ к другим вариантам должен обеспечиваться с помощью механизма прокрутки.
За элементом следуют кнопки отправки и сброса.
<FORM action="http://somesite.com/prog/component-select" method="post"> <P> <SELECT multiple size="4" name="component-select"> <OPTION selected value="Component_1_a">Программа_1</OPTION> <OPTION selected value="Component_1_b">Программа _2</OPTION> <OPTION>Программа _3</OPTION> <OPTION>Программа _4</OPTION> <OPTION>Программа _5</OPTION> <OPTION>Программа _6</OPTION> <OPTION>Программа _7</OPTION> </SELECT> <INPUT type="submit" value="Отправить"><INPUT type="reset"> </P> </FORM>
будут только выбранные варианты (с использованием "component-select"). Обратите внимание, что, если установлено значение атрибута , оно определяет управляющего элемента, в противном случае это будет содержимое элемента.
В этом примере мы используем элемент для группировки вариантов. Следующая разметка:
<FORM action="http://somesite.com/prog/someprog" method="post"> <P> <SELECT name="ComOS"> <OPTGROUP label="PortMaster 3"> <OPTION label="3.7.1" value="pm3_3.7.1">PortMaster 3 и ComOS 3.7.1 <OPTION label="3.7" value="pm3_3.7">PortMaster 3 и ComOS 3.7 <OPTION label="3.5" value="pm3_3.5">PortMaster 3 и ComOS 3.5 </OPTGROUP> <OPTGROUP label="PortMaster 2"> <OPTION label="3.7" value="pm2_3.7">PortMaster 2 и ComOS 3.7 <OPTION label="3.5" value="pm2_3.5">PortMaster 2 и ComOS 3.5 </OPTGROUP> <OPTGROUP label="IRX"> <OPTION label="3.7R" value="IRX_3.7R">IRX и ComOS 3.7R <OPTION label="3.5R" value="IRX_3.5R">IRX и ComOS 3.5R </OPTGROUP> </SELECT> </FORM>
представляет следующую группировку:
PortMaster 3 3.7.1 3.7 3.5 PortMaster 2 3.7 3.5 IRX 3.7R 3.5R
Визуальные агенты пользователей могут обеспечивать выбор в группах вариантов с помощью иерархических меню или с использованием любого другого механизма, отражающего структуру вариантов.
Графические агенты пользователей могут представлять это следующим образом:

Здесь показан элемент , представленный в виде каскадных меню. В вершине меню представлено выбранное в настоящий момент значение (PortMaster 3, 3.7.1). У пользователя имеется unfurled два каскадных меню, но он еще не выбрал новое значение (PortMaster 2, 3.7). Обратите внимание, что в каждом каскадном меню отображается метка элемента или .