Проблема с <h1> в выпадающем меню? - PullRequest
0 голосов
/ 21 февраля 2009

Я использую это меню на своей веб-странице

<select id="menu">
<option value="1"><h1>one</h1></option>
<option value="2"><h1>two</h1></option>
<option value="3"><h1>three</h1></option>
</select>

Я хотел бы знать, почему <h1>...</h1> не работает.

Спасибо !!! заранее.

Ответы [ 6 ]

5 голосов
/ 21 февраля 2009

Элемент option допускает только текст в качестве содержимого. Вот определение элемента:

<!ELEMENT OPTION - O (#PCDATA)         -- selectable choice -->
2 голосов
/ 21 февраля 2009

Я не пробовал это, так что это предположение, но я подозреваю, что размещение заголовка в раскрывающемся меню было бы бессмысленным. Я бы изменил формат параметров, используя класс CSS для самого параметра.

<select id="menu">
<option class="mybiggertext">Option 1</option>
etc...
1 голос
/ 21 февраля 2009

Если ваша цель - увеличить размер шрифта в опциях меню, попробуйте вместо этого:

<select id="menu" style="font-size:20">
<option value="1">one</option>
<option value="2">two</option>
<option value="3">three</option>
</select>
1 голос
/ 21 февраля 2009

Нельзя вставлять HTML-теги внутрь параметров элемента.

Но вы можете сделать это следующим образом (включает все опции):

<select style="font-weight:bold;font-size:14px;color:red;">
<option>item 1</option>
<option>item 2</option>
<option>item 3</option>
</select>
1 голос
/ 21 февраля 2009

Поскольку вы не можете использовать мои знания в тегах опций выбора. Если вы хотите изменить размер шрифта, используйте CSS вместо:

<html>
<head>
<style type="text/css">
select, option {font-size: 200%}
</style>
</head>
<body>
<select id="menu">
<option value="1">one</option>
<option value="2">two</option>
<option value="3">three</option>
</select>
</body>
</html>
0 голосов
/ 21 февраля 2009

Во-первых, спецификации для HTML 4.01 и XHTML 1.1 определяют минимальную модель содержимого для элемента 'option', который должен быть CDATA - то есть он может содержать только текст (без дочерних элементов) элементы). Большинство браузеров уважают это и не пытаются отображать какие-либо элементы внутри 'option'.

Во-вторых, кажется, что вы используете элемент 'h1' для создания визуального различия, в отличие от его правильного использования в качестве заголовка для создания иерархии семантического содержимого. Я бы посоветовал вам использовать что-то вроде:

<option value="1" class="big">one</option>

Стиль 'большой' по мере необходимости.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...