Установить атрибут размера тега через css? - PullRequest
15 голосов
/ 23 сентября 2008

Обычно вы можете сделать это:

<select size="3">
    <option>blah</option>
    <option>blah</option>
    <option>blah</option>
</select>

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

Ответы [ 7 ]

8 голосов
/ 23 сентября 2008

Там нет опции для установки размера, но если вы установите размер, некоторые браузеры позволят вам установить свойства ширины / высоты на то, что вы хотите через CSS.

Некоторые = Firefox, Chrome, Safari, Opera.

Не так много работает в IE, хотя (не удивительно)

Вы можете, если хотите, использовать CSS-выражения в IE, чтобы проверить, установлен ли атрибут размера, и, если это так, запустить JS, чтобы (пере) установить его на нужный размер ... например,

size = options.length;
6 голосов
/ 23 сентября 2008

Я не думаю, что это возможно.

Свойства CSS очень универсальны (применимы к любому элементу) и не могут каким-либо образом изменить функциональность элемента (только внешний вид).

Атрибут size меняет функциональность элемента, по крайней мере, в случае size = 1 / size! = 1.

2 голосов
/ 12 марта 2014

Попробуйте это:

select[attr=size] {
    width:auto;
    height:auto;
}
2 голосов
/ 09 июня 2009

Я не согласен, я смог установить ширину и высоту выбора с помощью CSS примерно так:

select { width: 5em; height: 5em; }

Работает в IE (7) так же, как я только что проверил.

0 голосов
/ 06 июля 2015

Вы можете использовать следующий CSS-селектор для стилизации элементов с атрибутом размера:

select[size]{
/*your style here */
}
0 голосов
/ 23 сентября 2008

Как правило, вы не можете добавлять атрибуты, установленные в HTML через CSS. Вы можете добавить в html, используя псевдо-селекторы: before и: after, но это все, к тому же они не совместимы во всех браузерах. Если вам действительно нужно это сделать, я думаю, вам придется прибегнуть к Javascript.

0 голосов
/ 23 сентября 2008

Я не верю, что это возможно, нет

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