HTML5中pattern属性的用法详解


本文摘自PHP中文网,作者黄舟,侵删。

最近在做手机页面时,遇到数字输入的键盘的问题,之前的做法只是一刀切的使用 type="tel",不过一直觉得九宫格的电话号码键盘上的英文字母太碍事了。于是想要尝试其它的实现方案,最终的结论却令人沮丧。不过也趁机详细了解了下pattern这个属性。

type="tel" 和 type="number" 的区别

这里还是先那么先交代一下最初遇到的问题。其实无论是tel还是number都不是完美的:

type="tel"

优点是iOS和Android的键盘表现都差不多

缺点是那些字母好多余,虽然我没有强迫症但还是感觉怪怪的啊。

type="number"

优点是Android下实现的一个真正的数字键盘

缺点一:iOS下不是九宫格键盘,输入不方便

缺点二:旧版Android(包括微信所用的X5内核)在输入框后面会有超级鸡肋的小尾巴,好在Android 4.4.4以后给去掉了。

不过对于缺点二,我们可以用webkit私有的伪元素给fix掉:

1

2

3

4

5

6

input[type=number]::-webkit-inner-spin-button, 

    input[type=number]::-webkit-outer-spin-button {

        -webkit-appearance: none;

        appearance: none;

        margin: 0;

    }

pattern属性

阅读剩余部分

相关阅读 >>

用h5制作烟花粒子特效的制作方法

HTML5后工作做什么

HTML5 dialog是什么?怎么使用HTML5中的dialog来实现模拟弹窗?

HTML5停止(暂停)当前播放的音频或视频的方法pause()

HTML5的应用-图像裁剪效果图

HTML5内联svg教程以及与canvas的区别

HTML5 canvas实现瀑布流文字效果代码

HTML5的classlist属性操作css类的使用详解

h5文件异步上传

详细介绍HTML5使用audio标签实现歌词同步的效果

更多相关阅读请进入《HTML5》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...