-webkit-appearance实现iPad端日历框样式的改变
来源:互联网 发布:怎么和淘宝小二联系 编辑:程序博客网 时间:2024/04/28 11:04
随着iPad的盛行,很多人开始在iPad上看网页,对于携程这样一个旅行网来说,日历控件的使用是必不可少的,然后目前使用自定义的日历控件在iPad上会影响用户的操作(使用input文本框来模拟实现,会弹出键盘导致日历弹出层被覆盖等情况)。解决的方法肯定会有,而且方法应该也挺多的,但对于JS能力不强的我而言,想到的是利用HTML5中的input日历属性值。
最初在PC端做实验时,因为文本框(type=”text”)的默认表现形式与日历框(type=”date”)是不同的,为了实现类似文本框点击后弹出日历框,利用获得焦点和失去焦点来隐藏input框。这个方法我在PC端的Chrome浏览器里看到感觉似乎还OK,操作步骤如下图顺序展示所示:
123456789101112131415161718192021222324252627
<form method="post" action="" id="frm_box"><input type="text" value="" id="txt_in" /><input type="date" id="date_in" /></form><script type="text/javascript">var t_in = document.getElementById("txt_in");var d_in = document.getElementById("date_in");var f_box = document.getElementById("frm_box"); window.onload = function() {d_in.style.display = "none"; t_in.onfocus = function() {d_in.style.display = "block";t_in.style.display = "none";} t_in.onblur = function() {t_in.style.display = "block";} d_in.onchange = function() {d_in.style.display = "none";t_in.value = d_in.value;}}</script>
12
#frm_box {position:relative;}#frm_box input {position:absolute;top:0;left:0;}
点击查看demo效果 iPad Calendar
但现在要考虑的是在iPad上的表现,对于目前这个效果在iPad上表现是完全不行的,JS代码也不合理,试了几次虽然还是可以通过焦点获取和失去的同时来让文本框获得日历框的value,看着代码感觉总是不爽,总感觉多此一举,如果能直接改变日历框(type=”date”)的表现方式不是更直接么。
有想法就想办法实现,找了找,发现-webkit-appearance属性有一个属性值是textarea,可以直接让日历框的默认表现改成文本框的表现,哦啦,搞定,只需要一句样式代码就让iPad上的日历框变成文本框,并且还是可以取得日历的值。
1
input[type="date"] {-webkit-appearance:textarea;}
在iPad中点击查看demo效果
不得不感慨现在的CSS是越来越强大了,需要学习和了解的东西太多了。
- -webkit-appearance实现iPad端日历框样式的改变
- webkit引擎的浏览器取消默认样式:-webkit-appearance:none
- 使用css3的appearance改变元素样式
- css中使用“-webkit-appearance: none;”去除系统默认appearance的样式引发的问题
- -webkit-appearance —— webkit外观样式属性
- 改变滚动条样式,适用于webkit内核的浏览器,平滑返回顶部功能实现
- CSS:关于“-webkit-appearance: none”样式使用问题
- 笔记:CSS改变webkit的浏览器滚动条样式
- -webkit-appearance 使用说明
- -webkit-appearance问题
- -webkit-appearance:none;
- -webkit-appearance:none
- css3改变滚动条样式-webkit-
- android seekBar改变样式-非圆角的实现
- 全局改变 方法 appearance
- appearance 取消默认样式
- C#实现日历样式的下拉式计算器
- 使用CSS3的appearance属性改变元素的外观
- UIWebView的相关操作
- struct 结构体的创建
- mysql安装start service applay security setting出错的解决方法
- spring 定时任务的 执行时间设置规则
- 《设计模式》读书笔记(一)
- -webkit-appearance实现iPad端日历框样式的改变
- ultraiso制作u盘启动盘
- wamp 访问出现index of
- iphone ios 如何使用gcd,block
- java删除文件
- BlackBerry10的起航
- struts2教程:6、为Action属性注入值
- JSP学习--web开发入门
- arduino蓝牙透传