给Select元素添加样式后出现双切换按钮,如何去除黑色按钮?
解决Select元素同时显示两个下拉按钮的问题
嘿,你遇到的黑色按钮其实是浏览器自带的原生select下拉箭头,和你自定义的白色箭头重叠在一起啦!咱们只需要通过CSS把原生的箭头隐藏掉,就能只保留你设置的自定义样式。
解决方案:修改你的CSS样式
给你的.styled-select类添加几个关键属性,用来禁用浏览器的原生下拉箭头样式:
.styled-select { background: url(http://i62.tinypic.com/15xvbd5.png) no-repeat 96% 0; height: 29px; overflow: hidden; width: 240px; /* 新增:隐藏各浏览器原生下拉箭头 */ -webkit-appearance: none; /* Chrome、Safari等WebKit内核浏览器 */ -moz-appearance: none; /* Firefox */ appearance: none; /* 标准属性 */ -ms-expand: none; /* IE 和 Edge 浏览器专属 */ } .semi-square { -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }
原理说明
-webkit-appearance: none和-moz-appearance: none:分别告诉WebKit和Gecko内核的浏览器,不要使用默认的select控件样式,这样原生的黑色箭头就会被隐藏。appearance: none是CSS标准属性,用于统一禁用原生样式。-ms-expand: none:专门针对IE和Edge浏览器,用来隐藏它们自带的下拉展开按钮。
这样修改之后,你的select就只会显示你自定义的白色切换按钮啦!
内容的提问来源于stack exchange,提问作者tilly
相关产品推荐
相关产品推荐

