Вот мой HTML:
<select id="ddlProducts" name="ddProducts">
<option>Product1 : Electronics </option>
<option>Product2 : Sports </option>
</select>
Я хочу сделать название продукта (то есть «Product1», «Product2» и т. Д.) Жирным, а его категории (например, электроника, спорт и т. Д.) Курсивом, используя только CSS. Я нашел старый вопрос, в котором говорилось, что невозможно использовать HTML и CSS, но, надеюсь, сейчас есть решение.
html
css
drop-down-menu
MrClan
источник
источник
Ответы:
Есть только несколько атрибутов стиля, которые можно применить к
<option>
элементу.Это потому, что этот тип элемента является примером «замененного элемента». Они зависят от ОС и не являются частью HTML / браузера. Он не может быть стилизован через
CSS
.Существуют сменные плагины / библиотеки, которые выглядят как,
<select>
но на самом деле состоят из обычныхHTML
элементов, которые МОГУТ быть стилизованы.источник
select > option
создавать стили , но для этого не существует надежного кросс-браузерного решения, и, по крайней мере, в Chrome вы можете максимально настроить размер шрифта, семейство, фон и цвет переднего плана. Может быть, еще несколько настроек, но такие вещи, как обивка, цвет при наведении и тому подобное, мне не удалось изменить. Действительно, могут быть альтернативы, но в зависимости от проекта тег <select> может понадобиться, например, для угловой проверки или по какой-либо другой причине.<option>
, но показывает, как имитировать,<select>
чтобы вы могли стилизовать параметры.OPTION
с помощью современных браузеров можноНет, это невозможно, так как стили для этих элементов обрабатываются ОС пользователя. MSDN ответит на ваш вопрос здесь :
источник
style="background-color: red;color: red;"
не работает для меня. РЕДАКТИРОВАТЬ: После закрытия консоли разработчика стиль был применен.Вы можете стилизовать элементы опций до некоторой степени.
Используя тэг * CSS, вы можете стилизовать параметры внутри поля, нарисованного системой.
Пример:
Это будет выглядеть так:
источник
Я нашел и использую этот хороший пример стилизации селекторов и опций. Вы можете делать с этим селектором все, что хотите. Вот скрипка
HTML
CSS
JS
источник
Вот несколько способов стиля
<option>
вместе с<select>
, если вы используете Bootstrap и / или JQuery. Я понимаю, что это не то, о чем просит оригинальный постер, но я подумал, что смогу помочь другим, кто наткнется на этот вопрос.Вы все еще можете достичь цели стилизации каждого из них по
<option>
отдельности, но, возможно, придется применить некоторый стиль к ним<select>
. Моя любимая библиотека - Bootstrap Select, упомянутая ниже.Bootstrap Select Library (jquery)
Если вы уже используете bootstrap, вы можете попробовать библиотеку Bootstrap Select или библиотеку, указанную ниже (поскольку она имеет тему начальной загрузки).
Обратите внимание, что вы можете стилизовать весь
select
элемент илиoption
элементы отдельно.Примеры :
Зависимости : требуется jQuery v1.9.1 +, Bootstrap , компонент dropdown.js Bootstrap и CSS Bootstrap
Совместимость : не уверена, но bootstrap заявляет, что «поддерживает последние стабильные выпуски всех основных браузеров и платформ»
Демо : https://developer.snapappointments.com/bootstrap-select/examples/
Select2 (JS lib)
Есть библиотека, которую вы можете использовать, называется Select2 .
Зависимости : Библиотека только JS + CSS + HTML (не требует JQuery).
Совместимость : IE 8+, Chrome 8+, Firefox 10+, Safari 3+, Opera 10.6+
Демо : https://select2.org/getting-started/basic-usage
Также есть тема начальной загрузки доступна .
Нет примера начальной загрузки:
Пример начальной загрузки:
MDBootstrap ($ & Bootstrap & JQuery)
Если у вас есть дополнительные деньги, вы можете воспользоваться премиальной библиотекой MDBootstrap . (Это целый комплект пользовательского интерфейса , поэтому он не легкий)
Это позволяет стилизовать элементы select и option с использованием дизайна Material .
Есть бесплатная версия, но она не позволит вам использовать симпатичный дизайн Material!
Зависимости : Bootstrap 4 , JQuery,
Совместимость : «поддерживает последние стабильные выпуски всех основных браузеров и платформ».
Демонстрация : https://mdbootstrap.com/docs/jquery/forms/select/#color
источник
Похоже, я могу просто установить CSS для
select
Chrome напрямую. CSS и HTML-код предоставлены ниже:источник
Как уже упоминалось, единственный способ - использовать плагин, который заменяет
<select>
функциональность.Список плагинов jQuery: http://plugins.jquery.com/tag/select/
Посмотрите на пример с помощью
Select2
плагина: http://jsfiddle.net/swsLokfj/23/источник
Bootstrap позволяет использовать стили с помощью data-content:
Пример: https://silviomoreto.github.io/bootstrap-select/examples/
источник
Некоторые свойства могут быть стилизованы для
<option>
тега:font-family
color
font-*
background-color
Также вы можете использовать собственный шрифт для отдельного
<option>
тега, например, любой шрифт Google , значки материалов или другие шрифты значков из icomoon или аналогичные . (Это может пригодиться для селекторов шрифтов и т. Д.)Учитывая это, вы можете создать стек семейств шрифтов и вставлять значки в
<option>
теги, например.откуда
★
взятоIcons
и остальноеRoboto
.Обратите внимание, что пользовательские шрифты не работают для мобильного выбора.
источник
red
: <option style = "color: red;">На самом деле вы можете добавить: before и: after и стилизовать их. По крайней мере, это что-то
источник
Наступил 2017 год, и можно выбрать конкретные варианты выбора. В моем проекте у меня есть таблица с классом = "Вариации" , и параметры выбора находятся в ячейке таблицы td = "значение" , а выбор имеет идентификатор select # pa_color . Элемент option также имеет класс option = "attach" (среди других тегов класса). Если пользователь вошел в систему как оптовый клиент, он может увидеть все варианты цвета. Но розничным покупателям не разрешается покупать 2 варианта цвета, поэтому я их отключил
Это заняло немного логики, но вот как я нацелился на отключенные опции выбора.
CSS
При этом мои цветовые варианты видны только оптовым покупателям.
источник
Оставляя здесь быструю альтернативу, используя переключение классов на столе. Поведение очень похоже на выбор, но может быть стилизовано с переходом, фильтрами и цветами, каждый ребенок в отдельности.
источник
Вы можете использовать встроенные стили, чтобы добавить привычные стили к
<option>
тегам.Например:
<option style="font-weight:bold;color:#09C;">Option 1</option>
это будет применять стили только к этому конкретному<option>
элементу.Затем вы можете использовать немного волшебства javascript, чтобы применить встроенные стили ко всем
<option>
элементам внутри<select>
тега следующим образом:var select = $(document).getElementById('#select-element-id')
var option = select.children('#option-element-id')
option.css('font-weight', 'bold')
option.css('font-size', '24px')
Вы также можете использовать,
<option value="" disabled> <br> </option>
чтобы добавить разрыв строки между параметрами.источник
Этот элемент отображается операционной системой, а не HTML. Его нельзя стилизовать с помощью CSS.
попробуй это может тебе помочь
источник
Вы можете добавить класс и дает font-weight: 700; в варианте. Но благодаря этому весь текст станет жирным.
источник
Это определенно будет работать. Опция select отображается операционной системой, а не html. Вот почему стиль CSS не действует, обычно
option{font-size : value ; background-color:colorCode; border-radius:value; }
это работает, но мы не можем настроить отступы, поля и т. Д.
Код ниже 100% работает, чтобы настроить тег выбора, взятый из этого примера
источник
Даже если не нужно много свойств изменять, но вы можете добиться следующего стиля только с помощью css:
HTML:
CSS:
источник