我想使用 CSS 在 HTML 中的选择选项之间添加某种空间(填充、边距或其他)。我目前正在使用 Chrome,并且我已经尝试过使用这样的东西:
select option {
padding: 10px
}
然而它没有用。我已经读过这是可能的,但它在 IE 中不起作用。
无论如何,我想让它在其他浏览器中工作,即使它在 IE 中不起作用。
选择选项的样式非常有限,以保持操作系统中所有应用程序之间的连贯性和一致性,因此浏览器应该限制一些基本元素的样式,例如您的 case 选项标签。
该限制取决于浏览器到浏览器,例如选项标签的填充甚至边距在 Mozilla Firefox 中有效,而在 Chrome 中无效。
如果您的网站非常需要设置选项标签的样式,那么我建议您使用一些 jQuery 插件(您也可以自己制作一个下拉菜单,很简单)。
根据我的经验,选项标签的外观是由浏览器决定的,而且通常是有充分理由的——想想 iOS v chrome 上的外观有多么不同以及这样做的好处。
appearance
但是,您可以通过使用浏览器前缀属性对 select 元素施加一些控制。
例如:
select {
padding: 2px 10px;
border: 1px solid #979997;
-webkit-appearance: none;
-moz-appearance: none;
-ms-appearance: none;
-o-appearance: none;
appearance: none;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
-ms-border-radius: 4px;
-o-border-radius: 4px;
border-radius: 4px;
}
但是,当单击时,它们会在您使用的任何浏览器中正常显示。
如果您想要更好的控制,我认为您最好的选择是@sumitb.mdi 建议使用jquery 插件或自己从头开始构建类似的东西。
<select></select>
标签:- 更改了选择css 属性,但如果要更改其选项属性,则未更改其选项值属性,因此添加 jQuery 插件,否则创建自己的下拉菜单(自定义下拉菜单)。