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属性

阅读剩余部分

相关阅读 >>

HTML5实现下雪效果的实例代码分享

h5移动端 超实用的css3模拟边框最新研究示例代码

详解HTML5应用中accordion三种效果的探索

HTML5中在可拖动元素或选取的文本放置在目标区域时触发的事件ondrop

HTML5结合javascript实现简易音乐播放器

详细分析HTML5 formdata对象的使用

HTML5表单相关元素和属性

h5里的postmessage api图文详解 详细介绍

HTML5中使用json对象的实例代码

关于HTML5 history api 的介绍

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




打赏

取消

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

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

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

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

评论

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