iOS 8.3 – 1.0以下的元视口初始缩放比例会导致方向更改时出现奇怪的内容缩放

将我的iOS设备升级到iOS 8.3后,我注意到了元视口初始缩放属性的一些奇怪的行为。 如果我将初始缩放比例设置为1.0,并在网页上旋转我的设备,则整个内容将逐渐变小,最终浏览器将崩溃。

我注意到,每个方向变化的内容变小的程度与您设置初始缩放比例有关。 例如,如果我将其设置为0.9,内容将每次减less10%。 如果将其设置为0.6,则内容将每次减less40%。

由于这个bug的性质,它不能在jsfiddle上放置或体验。 相反,我将在这里粘贴代码,以便您可以在某处testing它:

<!doctype html> <html> <head> <title>initial scale under 1.0</title> <meta name="viewport" content="width=device-width, initial-scale=0.7, user-scalable=0" /> </head> <body> <div id = "wrapper"> <h1>Hello, run this page on iOS 8.3 device and change the orientation multiple times to make this text go smaller and eventually crash the browser!</h1> </div> </body> </html> 

你可以比较这个破碎的例子和一个工作的例子,它的初始缩放比例设置为1.0:

 <!doctype html> <html> <head> <title>initial scale 1.0</title> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0" /> </head> <body> <div id = "wrapper"> <h1>This text will not get smaller nor will the browser crash when you rotate your device multiple times!</h1> </div> </body> </html> 

在升级到iOS 8.3之前,设备旋转工作得很好。 布局既不会缩小,也不会在多个方向更改后浏览器崩溃。

有没有办法解决这个问题?

您不能在最新的iOS 8.3中的某个网站中重现该错误,但是您仍然可以在其他某些网站中重现该错误。

从您使用jQuerymobile的评论。

一些版本的jQuery手机可能与一些版本的iOS Safari 不兼容

在某些版本中,我们不能完全排除safari视口缩放可能存在的bug。但是我们可以做些什么,我们可以做一个解决方法来解决这个问题。

这是解决 缩放问题的一种解决方法 。

这是jQuery论坛中的一个bug 主题

这里是关于如何解决iPhone的视口比例错误的详细文章 。

在您的网站上安装最新的jqueryMobile总是明智的,因为它可能会有 jQueryMobile在较新版本的浏览器中遇到的修复和解决方法

希望这可以帮助。

随意评论任何疑虑。