解决ios手机select下拉选择不居中问题

本文介绍了一种解决iOS设备上select下拉选择框不居中的方法,通过将选择结果赋值给span元素,并设置select字体透明,同时使span不可点击,配合HTML5、JS及CSS3代码实现下拉菜单的居中显示。

解决ios手机select下拉选择不居中问题

思路:select选择后赋值给span,select字体设置透明,span要设置不可点击

html5代码

<div class="page" style="position: relative;">
    <span disabled>第 1 页</span>
    <select id='pageIndex' onclick="hasSelect()" onchange='pageChange(this.value)' style="opacity: 0;position: absolute;width: 100%;height: 100%;top: 0;left: 0;">
        <!-- <option value="1">第 1 页</option> -->
    </select>
</div>

js代码

$(function(){
	initSelect()
})
function initSelect(){ //初始化select中的option
    var index = 100 //页数
    var str ="";
    for(var i=0;i<index;i++){
        str += '<option value="'+(i+1)+'"> 第 '+(i+1)+' 页 </option>';
    }
    $("#pageIndex").html(str);
}
function pageChange(val){ //更改选项
    $(".page span").text("第 " + val + " 页")
}
function hasSelect(){ //显示上次已选选项
    $('#pageIndex')[0].selectedIndex = -1; //取消默认选择第一项(解决第一项无法选择)
}

css3代码

.page{
    display: inline-block;
    margin: auto;
    text-align: center;
    border-bottom: 1.5px solid #000;
}
.page select{
    border: none;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    outline: none;
    background: none;
    text-align: center;
    text-align-last: center;/*兼容chrome*/
    font-size: .24rem;
}
.page span{
    font-size: .24rem;
}
select option{
    text-align: center;
}

上面是动手实现的效果,亲测可行~,截图展示效果
在这里插入图片描述
在这里插入图片描述

下面是冲浪找到的思路启发文章

启发文章:
【https://blog.youkuaiyun.com/shuishuixiaoping/article/details/86240036】
【https://bbs.youkuaiyun.com/topics/391814220】

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值