這段代碼是網上大部分的解決辦法,在這里總結一下:
讓select透明,上面加一個span,來替換select框,可以自定義小三角樣式,也可以做出select文字居中的效果。
<div class="ui-select"> <span>使用加息券或現金券 <i class="icon-down lMar10"></i></span> <select name="" id=""> <option value="10元現金券">10元現金券</option> <option value="20元現金券">20元現金券</option> <option value="30元現金券">30元現金券</option> <option value="40元現金券">40元現金券</option> </select> </div>
.ui-select{ width:75%; height:63px; line-height:63px; background-color:#ECAFB4; color:#fff; padding:0 30px; text-align: left; position: relative; } select{ width:100%; height:63px; line-height:33px; opacity: 0; position: absolute; top:0; left:0; }
/*小三角圖標*/
.icon-down{ display: inline-block; width:30px; height:16px; background: url("../image/newWap/wapIcons.png") -168px -96px no-repeat; }
$(".ui-select select").change(function(){ $(this).prev("span").html($(this).find("option:selected").val()+'<i class="icon-down lMar10"></i>'); })
//select監測option的值的變化,添加到span中
顯示效果如圖: