html5页面当中,打字时键盘把背景覆盖住了怎么办?

html5页面当中,打字时键盘把背景覆盖住了怎么办?,第1张

解决方法

1、scrollIntoView(alignWithTop): 滚动浏览器窗口或容器元素,以便在当前视窗的可见范围看见当前元素。

2、alignWithTop 若为 true,或者什么都不传,那么窗口滚动之后会让调用元素的顶部与视口顶部尽可能平齐。

3、alignWithTop 若为 false,调用元素会尽可能全部出现在视口中,可能的话,调用元素的底部会与视口顶部平齐,不过顶部不一定平齐。

4、该方法是唯一一个所有浏览器都支持的方法,类似还有如下方法,但是只有在Chrome和Safari有效。

5、代码如下:

6、再次测试,效果如下:

7、相比于input被挡住,突兀地出现在页面中间更加可以令人接受,但是多次测试,仍然存在问题:当切换输入法的时候,input框的位置会往下移动,被键盘挡住一部分,而且出现的概率比较高(中英文切换),效果如下:

8、当软键盘被唤起是,使用 scrollTop() 方法使input元素滚动到指定的位置,但是滚动的具体数值需要调试才能给出,所以这里就不再演示了。

html实现元素全屏的时候,会在该元素上加上如下css,该css无法被覆盖和修改。

我们可以通过对元素通过调用requestFullscreen来开启全屏

通过调用document.exitFullscreen来退出全屏

定位属性控制网页所显示的整个元素的位置,它可设置元素是放置在页面的绝对位置,也可设置为相对于其他元素的位置。在本例中:position:absolute就表示采用绝对定位的方式。采用绝对定位方式就需要同时采用left,right,top,bottom等属性来进行绝对定位,而这些属性也称为元素位置属性,分别表示对象与其最近一个定位的父对像的左侧,右侧,顶部和底部的相对位置,它的值可以为auto百分数;数值+单位。在本例中left:396pxtop:66px采用的为:数值+单位,分别为与父对象的左侧相对位置396像素,顶部的相对位置为66像素。因为在采用absolute定位时,该元素就被当作一个矩形覆盖物来格式化,格式化后的矩形区域就变成了一个可以放置其他html元素的容器,这个容器也就是层元素,它可以凌驾于html 文档的布局之上,区域下面的文字图形无法环绕和透过该容器显示出来。所以z-index:1中是利用层叠顺序属性设定层的先后顺序和覆盖关系,z-index值高的层覆盖z-index值低的层,一般情况下为1,表示该层位于最下层。width和height是分别设定层的宽度和高度,在本例width:12pxheight:103px表示宽度为12像素,高度为103像素


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7073641.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-01
下一篇 2023-04-01

发表评论

登录后才能评论

评论列表(0条)

保存