HTML页面中input元素在android浏览器中获得焦点后页面放大解决方法
2013-11-20 14:09
211 查看
如题。
在开发微信端微店页面的过程中,页面需要使用焦点轮播图,由于开发周期短,所以直接使用之前适配在电脑端页面的焦点轮播图。这个焦点轮播图是设置了960px的宽度,为了适配页面,所以在开发的时候页面元素全部参照焦点轮播图的尺寸来进行设计。
在这个页面中,如果不使用HTML5专门为移动终端网页开发设计的viewport标签,在苹果的safari浏览器下,默认是以全屏的形式显示页面。而且点击输入框,当input元素获得焦点时,页面不会放大,但是在安卓的浏览器下,当用户点击input type=text的文本输入框,input输入框获得焦点时,页面会马上放大到最大。
使用viewport标签的话,用户通过设置initial-scale\maximum-scale\minimum-scale\user-scalable等参数来设定页面初始加载方式。但是由于我们的页面是固定的宽度,所以不同的浏览器需要作不同的viewport参数设置。即,在IOS的safari下显示正常,但是在android下是不正常的。
最后,解决方法是毅然决然地重构页面,将轮播图的宽度全部设置成了以百分比表示。同时高度以苹果手机屏幕为标准,进行比例换算。然后对页面其他元素的样式进行重构,以百分比定宽度以及margin,padding等属性。
通过viewport+百分比的方法,最终解决了页面在android移动终端中input元素获得焦点后页面放大的问题。
同样的道理,电脑端的所有页面都可以通过这个方法实现对移动端的页面适配。
附上腾讯ISUX对于移动端网页开发的一篇文章:
http://isux.tencent.com/mobile-development-essential-knowledge.html
在开发微信端微店页面的过程中,页面需要使用焦点轮播图,由于开发周期短,所以直接使用之前适配在电脑端页面的焦点轮播图。这个焦点轮播图是设置了960px的宽度,为了适配页面,所以在开发的时候页面元素全部参照焦点轮播图的尺寸来进行设计。
在这个页面中,如果不使用HTML5专门为移动终端网页开发设计的viewport标签,在苹果的safari浏览器下,默认是以全屏的形式显示页面。而且点击输入框,当input元素获得焦点时,页面不会放大,但是在安卓的浏览器下,当用户点击input type=text的文本输入框,input输入框获得焦点时,页面会马上放大到最大。
使用viewport标签的话,用户通过设置initial-scale\maximum-scale\minimum-scale\user-scalable等参数来设定页面初始加载方式。但是由于我们的页面是固定的宽度,所以不同的浏览器需要作不同的viewport参数设置。即,在IOS的safari下显示正常,但是在android下是不正常的。
最后,解决方法是毅然决然地重构页面,将轮播图的宽度全部设置成了以百分比表示。同时高度以苹果手机屏幕为标准,进行比例换算。然后对页面其他元素的样式进行重构,以百分比定宽度以及margin,padding等属性。
通过viewport+百分比的方法,最终解决了页面在android移动终端中input元素获得焦点后页面放大的问题。
同样的道理,电脑端的所有页面都可以通过这个方法实现对移动端的页面适配。
附上腾讯ISUX对于移动端网页开发的一篇文章:
http://isux.tencent.com/mobile-development-essential-knowledge.html
相关文章推荐
- android浏览器下a/input等元素获得焦点时高亮边框
- 移动端开发,IOS、iPhone,表单input元素获取焦点时页面被放大的解决办法。
- 移动端开发,IOS、iPhone,表单input元素获取焦点时页面被放大的解决办法。
- webapp之登录页面当input获得焦点时,顶部版权文本被顶上去 的解决方法
- 移动H5页面,Android手机下,input获取焦点弹出系统虚拟键盘时,挡住input解决方法
- 解决安卓手机H5页面input获得焦点时页面挤压或者底部上移
- ios webView 放大网页解决/input 获得焦点focus 网页放大 解决
- 手机浏览器页面点击不跳转(Android手机部分浏览器) 浏览器双击放大网页 解决
- 解决手机浏览器上input 输入框导致页面放大的问题(记录)
- android 加载web view的时候,点击输入框,导致页面放大的问题解决方法
- 在进行页面的DIV CSS排版时,遇到IE6(当然有时Firefox下也会偶遇)浏览器中的图片元素img下出现多余空白的问题绝对是常见的对于该问题的解决方法也是“见机行事”。
- 如何查看以XML为后缀的HTML代码——DHTML作业中获得页面元素的小方法
- js中对arry数组的各种操作小结 瀑布流AJAX无刷新加载数据列表--当页面滚动到Id时再继续加载数据 web前端url传递值 js加密解密 HTML中让表单input等文本框为只读不可编辑的方法 js监听用户的键盘敲击事件,兼容各大主流浏览器 HTML特殊字符
- 去除android浏览器中a、input获得焦点时的高亮边框(outline)
- 如何移除webkit浏览器下 input 元素获得焦点后的默认样式
- 如何移除webkit浏览器下 input 元素获得焦点后的默认样式
- 移动端使用meta标签解决input获取焦点放大页面
- 在magento上使用fvalidate出现的input在页面加载完后获得焦点的解决办法
- HTML页面中,设置input获得焦点
- 浏览器窗口放大缩小后页面内容居中解决方法