Установить атрибут размера тега через css?
Обычно вы можете сделать это:
<select size="3">
<option>blah</option>
<option>blah</option>
<option>blah</option>
</select>
И он будет отображаться как выборка, в которой видны все три параметра (без опускания)
Я ищу способ установить этот атрибут размера из css.
Ответы
Ответ 1
Невозможно установить размер, но если вы установите размер, некоторые браузеры позволят вам установить свойства ширины/высоты для всего, что вы хотите, используя CSS.
Some = Firefox, Chrome, Safari, Opera.
В IE не так много работает (не удивительно)
Вы могли бы, если хотите, использовать выражения CSS в IE, чтобы проверить, установлен ли атрибут размера, и если да, запустите JS (re), чтобы установить его в желаемый размер... например
size = options.length;
Ответ 2
Я не думаю, что это возможно.
Свойства CSS очень общие (применимы к любому элементу) и не могут каким-либо образом изменять функциональность элемента (только внешний вид).
Атрибут size изменяет функциональность элемента, по крайней мере, в случае size = 1/size!= 1.
Ответ 3
Я не согласен, я смог установить ширину и высоту выбора с помощью CSS с чем-то вроде этого:
select { width: 5em; height: 5em; }
Работает в IE (7), а также я просто тестировал его.
Ответ 4
Попробуйте следующее:
select[attr=size] {
width:auto;
height:auto;
}
Ответ 5
В общем, вы не можете добавлять атрибуты, установленные в html через CSS. Вы можете добавить html с помощью псевдоселекторов: до и: после, но об этом, плюс они все еще не совместимы во всех браузерах. Если вам действительно нужно это сделать, я думаю, вам придется прибегнуть к Javascript.
Ответ 6
Вы можете использовать следующий CSS-селектор для выбора элементов стиля с атрибутом размера:
select[size]{
/*your style here */
}
Ответ 7
Я не считаю, что это возможно.