javascript - 虚拟键盘缩放网页

标签 javascript android html css

这可能是一个愚蠢的问题,但我被困住了:我正在构建一个包含大量输入字段的页面。这些输入字段应占满一定比例的屏幕,因为不同设备的分辨率会有所不同。因此我会有这样的样式:

input { height: 20%; }

我希望它计算高度并保持它,但事实并非如此。

looks good until... oh no :O

所以我的猜测是,当虚拟键盘出现时,它会调整页面大小并且输入字段具有新高度的 20%。

在经历了一些挫折之后,我创建了一个只有输入字段的页面,并检查是否可以阻止它以某种方式调整大小。这是不起作用的:

-以百分比设置最小高度

-试图在js中保持页面高度

 var initialHeight = document.body.scrollHeight;
        window.onresize = function(event){
            document.body.scrollHeight = initialHeight;
        }

(这是否意味着百分比仅与可见尺寸有关?)

-将输入字段放在一个具有固定最小高度(以像素为单位)的 div 中

输入字段本身的最小高度(以像素为单位)似乎确实有效,但这不是我正在寻找的解决方案。

如何创建一个在虚拟键盘出现时不会调整大小的输入字段?

最佳答案

将高度设置为固定值,而不是百分比。如果您将它设置为 20%,它将是其父级大小的 20% 并与其父级一起缩放,在本例中为整个页面。

您可能希望使用视口(viewport)元标记在不同设备上更好地缩放。 https://www.w3schools.com/css/css_rwd_viewport.asp

关于javascript - 虚拟键盘缩放网页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47675904/

相关文章:

android - "MissingRegistered"使用 com.google.android.material.* UI 组件时的 Lint 警告

jquery - 如何使用 bootstrap jquery 对齐三个 div 以满足响应能力?

javascript - C# 等线程语言上的线程与异步?

javascript - jquery 创建双重验证错误

android - 在 Firefox for Android 中删除元素突出显示

java - 多路开关中开关盒的解决方案

javascript - 弹出窗口未显示在 Chrome 扩展程序中,但单击图标时会触发所有事件

javascript - 当前用于将 html + svg + css 转换为 pdf 的库

javascript - 类型 'opacity' 上不存在属性 'IntrinsicAttributes',React Native 中 View 不透明度引发抛出和错误

javascript - 如何在 Protractor 中编写 beforeSomeTests?