android 2.3.3固定页脚问题

时间:2012-08-27 09:50:28

标签: android html jquery-mobile

我有一个jquery移动页面,其中有一个文本框。单击文本框后,虚拟键盘将显示在电话屏幕上。

问题从这里开始。如果我在android 2.3.3中运行页面,当键盘出现时,页面上的页脚会出现。但是当我在ICS上运行我的页面时,这不会发生。我知道android 2.3.3中有关于标题amd footer(github link)的固定定位的错误。

这个问题出于同样的原因吗?

请帮助!!谢谢!!

3 个答案:

答案 0 :(得分:5)

  1. 确保通过将此元标记添加到您的头部来禁用应用缩放:

    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">

  2. 像往常一样使用页脚创建页面。请务必不要添加data-position="fixed"

  3. 而是将一个“fixedFooter”类添加到页脚的class属性中:class="fixedFooter"

  4. 在CSS(-file)中创建“fixedFooter”类:

    .fixedFooter 
    {
       position: fixed !important;
       left: 0px !important;
       right: 0px !important;
       bottom: 0px !important;
       z-index: 999 !important;
    }
    

答案 1 :(得分:1)

如果您的代码适用于ICS但在Android 2.3.x中无效,这是因为style="position:fixed;"中的2.3.x错误

在你的HTML头改变元中:

<meta name="viewport" content="width=device-width, initial-scale=1.0,
     minimum-scale=1.0, user-scalable=no"/>

这解决了Android 2.3.x问题。

更多信息:
http://benfrain.com/easy-css-fix-fixed-positioning-android-2-2-2-3/
http://bradfrostweb.com/blog/mobile/fixed-position/

编辑:
我不建议更改所有设备的视口。它可能会导致不同的行为,例如用户无法进行缩放,捏合等。如果用户使用Gingerbread,则应检测访问者是否使用Gingerbread设备并更改视口。要查看Android版本,您可以使用:
Detecting Android Browser (from v. 1 to 2.3 firmware) in PHP

答案 2 :(得分:0)

从视口中移除“user-scalable = no”并且所有工作都很好

解释@ http://wil.to/android-positioning/

像2.2.2

上的魅力一样工作