Изменить цвет границы на <select>HTML-форме - PullRequest
16 голосов
/ 29 января 2009

Можно ли изменить цвет границы элемента <select/> в форме HTML?

Стиль border-color работает в Firefox, но не в IE.

Я не нашел реальных ответов в Google.

Ответы [ 5 ]

25 голосов
/ 29 января 2009

Я хотел бы заключить этот блок выбора в блок div и установить свойство border следующим образом:

<div style="border: 2px solid blue;">
  <select style="width: 100%;">
    <option value="Sal">Sal</option>
    <option value="Awesome">Awesome!</option>
  </select>
</div>


Вы должны быть в состоянии играть с этим, чтобы выполнить то, что вам нужно.

6 голосов
/ 29 января 2009

Как заявил Диодей, IE не допускает ничего, кроме границы по умолчанию для <select> элементов. Тем не менее, я знаю два хака для достижения аналогичного эффекта:

  1. Используйте DIV, который расположен абсолютно в той же позиции, что и раскрывающийся список, и установите его границы. Похоже, что у выпадающего меню есть граница.

  2. Используйте решение Javascript, например, предоставленное здесь .

Однако это может оказаться слишком большим усилием, поэтому вам следует оценить, действительно ли вам нужна граница.

4 голосов
/ 29 января 2009

Нет, элемент управления <select> является элементом управления системного уровня, а не элементом управления клиентского уровня в IE. Несколько версий назад он даже не играл хорошо - с z-index, ставя себя на вершину практически всего.

Чтобы сделать что-то необычное, вам нужно будет эмулировать функциональность, используя CSS и ваши собственные элементы.

2 голосов
/ 15 февраля 2011
select{
    filter: progid:DXImageTransform.Microsoft.dropshadow(OffX=-1, OffY=-1,color=#FF0000) progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=1,color=#FF0000);
}

У меня работает.

1 голос
/ 29 января 2009

Вы можете установить цвет границы в IE, однако есть некоторые проблемы.

Аааа ... Я мог бы поклясться, что ты мог бы сделать это ... просто проверил и понял, что я не прав. Примечания, приведенные ниже, все еще применимы.

  1. в IE8 (Beta1 -> RC1) изменение цвета границы или цвета фона / изображения приводит к отключению элемента управления в WindowsXP (стрелка и прямоугольник отображаются в Windows 95)

  2. вы все еще не можете очень хорошо стилизовать опции в элементе управления select, потому что IE не поддерживает его. ( см. Ошибку # 291 )

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