我正在尝试更改select option
边框,但无法做到这一点,我已多次尝试但未找到合适的解决方案。我附上了屏幕截图。
<head>
<style>
select option {
background:transparent;
border:0;
}
</style>
</head>
<body>
<select>
<option>hello</option>
<option>hello</option>
<option>hello</option>
<option>hello</option>
<option>hello</option>
</select>
</body>
答案 0 :(得分:15)
选择的下拉列表是所谓的ShadowDOM的一部分。在目前的CSS规范3级中,没有办法定位大多数ShadowDOM元素。您可以阅读ShadowDOM here上的规格,尽管那里没有太多关于您想要的内容。
Chrome有一些专有选择器可以更改某些 shadowDOM元素,但不是全部。 Firefox的数量甚至更少(据我所知),Opera也没有。 IE可能同样糟糕或更糟。
考虑到兼容性,最好的办法是使用Jquery插件来模拟使用其他HTML元素的select,如果你真的想要设置它的样式。 Here's a neat one
答案 1 :(得分:1)
简短回答:
可以使用select
元素
可能的解决方案:
使用任何用户界面库(bootstrap,jquery UI或any other)制作自定义类似选择的元素,您可以根据需要设置样式(它们都使用其他自定义友好元素,例如ul
,li
,div
....)
答案 2 :(得分:0)
答案 3 :(得分:0)
据我所知,这是不可能的,依赖于每个浏览器的属性,没有过去的问题可能会让事情变得更清晰。
问候。
也许这可能会有所帮助:
How to style a <select> dropdown with CSS only without JavaScript?