如何修改select标签的默认下拉箭头样式?
2024-09-25 00:02:23
对于一般的项目而言,select标签在浏览器中表现出来的默认样式也不算丑,但是一次项目中,项目经理却要求对select标签本身进行样式修改,美化其下拉小箭头的样式。我思考和尝试了许多方法,最终得到一种能够兼容chrome、360、火狐、搜狗、IE10+等浏览器的最佳方案。废话不多说,实现原理如下:
html结构:
<div class="box">
<select id="choice">
<option value="000">请选择</option>
<option value="371">河南</option>
<option value="372">河北</option>
</select>
<img src="arrow-3.png" alt="" id="arrow2">
</div>
<label for="userName">姓名</label><input type="text" placeholder="请输入姓名" id="userName">
css样式:
.box{
width: 200px;
height: 30px;
border: 1px solid #0f0;
position: relative;
margin-bottom: 100px;
}
#choice{
position: absolute;
top:;
left:;
z-index:;
width: 200px;
height: 30px;
border:;
/*outline: none;*/ appearance: none;
-moz-appearance: none;
-webkit-appearance: none;
background-color: transparent;
}
select::-ms-expand {
display: none;
}
img{
width: 30px;
height: 20px;
position: absolute;
top: 5px;
right:;
z-index:;
transition:all 0.2s;
}
js代码:
<script src="jquery.js"></script>
<script> $("#choice").focus(function(){
$("#arrow2").css({
transform:"rotate(180deg)"
});
});
$("#choice").blur(function(){
$("#arrow2").css({
transform:"rotate(0deg)"
});
}); $("#choice").on("change",function(){
$("#choice").blur();
$("#arrow2").css({
transform:"rotate(0deg)"
});
}); </script>
好了,本方法还存在一些不完美,欢迎各位小伙伴跟帖补充,我会及时完善博客,助人助己。
最新文章
- xml文件解析(解析以后在RootTableViewController输出)
- 修改windows自带的Ctrl+Space输入法切换快捷键
- 用node.js给图片加水印
- iOS - iOS 应用
- Sublime Text 3 编辑器使用
- Website Speed Optimization Guide for Google PageSpeed Rules
- 通过DOS、SHELL批处理命令加载Lib并编译和打包Java项目(或者运行项目)
- ruby -- 进阶学习(九)定制错误跳转404和500
- ios卡牌游戏项目源码
- Android(java)学习笔记136:Java类初始化顺序
- Linux 监控CPU 温度
- 对Extjs中时间的多种处理
- C# 常用接口学习 IEnumerable<;T>;
- 201521123117 《Java程序设计》第3周学习总结
- 了解一下Http常见状态码、Http协议的工作特点和原理、Http请求Post与Get的区别
- 一张图看懂AI、机器学习和深度学习的区别
- html页面的CSS、DIV命名规则(仅供参考学习)
- Linux x86_64 APIC中断路由机制分析
- unity 5.3 以后加载场景
- prop-types:该第三方库对组件的props中的变量进行类型检测