html原生select改造箭头及文字左右居中的一种办法

本文介绍了如何在HTML原生select中改造箭头并实现文字左右居中。通过设置`apperance: none`清除默认样式,利用`<b>`标签模拟箭头效果,以及使用`text-indent`实现文字居中。文章还提到了通过`<span>`测量文字宽度以适应不同情况下的居中需求,并分享了一种简单的土鳖方法来解决这些问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用过原生select做网页开发的人,一定会对select的两个问题痛心疾首,一是箭头没办法使用css改造,二是显示文字没办法左右居中。

首先,如果你有足够时间的话,请改用jquerymobile。jquerymobile提供了移动端非常强大的各种控件。对select除了基本css改造外,还支持选项的分组、多选等各种样式。

其次,使用div模拟,网上有较多的使用div+css模拟select的案例,可以找来参考。

最后,如果你对前端开发不熟,而且又想偷懒的话,可以采用本文中的土鳖方法。

改造箭头

博主在开发微信上的H5应用时 ,发现border:none和background:none在微信浏览器里面是无效的。在网上找到一个办法,直接清除了select的样式:

appearance:none;
-moz-appearance:none; /* Firefox */
-webkit-appearance:none; /* Safari 和 Chrome */

apperance属性可以改观元素的外观,加上这段css后,select元素就没有了边框、箭头和背景。appearance属性还可以使用元素显示出别的控件样式,例如button或者listbox。

接下来使用自定义的箭头放到select之上就可以了,可以将箭头盖在select之上,麻烦的是要考虑布局和事件的问题。

如果对箭头的要求比较不高,可以使用<b></b>标签,<b>本来是用于给文字加粗的,但如果文字是空的话,其border属性可以模拟一个箭头效果出来。

<select class="some"></se
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值