因此,我正在创建一个在未命名应用中的UIWebView内运行的全屏广告。基本上,我根本无法修改视口元标记,因此我的应用程序需要精确到1023x767才能全屏显示并且不会在webview上滚动。它可以在95%的时间内工作,除了一个触发奇怪错误的场景。如果我从横向开始,然后旋转到水平,我可以围绕webview滚动应用程序,就好像它比视口大。
在CSS中,我有:
@media only screen and (orientation: portrait) {
html, body {
width: 767px;
height: 1023px;
overflow:hidden;
position:relative;
}
}
@media only screen and (orientation:landscape) {
html, body {
width: 1023px;
height: 767px;
overflow:hidden;
position:relative;
}
}
我正在检测方向变化的事件,我得到了:
$('html').width() = 767
$('html').height() = 1023
$('body').width() = 767
$('body').height() = 1023
然而,我发现我也同时得到了这个,这显然是问题,但我无法弄清楚为什么或如何解决它:
$(window).width() = 1023
$(window).height() = 1365
有什么想法?任何人!? : - )
答案 0 :(得分:1)
因此,通过更多的研究,我无法使用veiwport metatag建立width = device-width的原因是因为视口实际设置为比设备宽度小1px。然后,您将在该死像素区域中的视口中滚动。该应用程序检测左右滑动以在不同的Web视图之间进行更改,因此您无法执行“e.preventDefault()”来禁用滚动,并使其停留在1px的滚动状态,从而搞砸应用程序中的滑动功能。 / p>
长话短说,我能做到:
viewport =(device-width-1)并修复了问题。应用程序的人不知道这是可能的,我甚至不确定这样的事情是否可能,但它使得刷卡仍然可能发生,因为你没有卡在那个死区。