18

我在拟合 webapp(主屏幕)的高度时遇到问题。我使用以下元标记:

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

我的问题是,屏幕顶部和底部都有黑条。首先我认为这是 iPhone 5 的错误,因为屏幕更高。但是今天我看到了一个 webapp (apps.ft.com/),它非常适合 iphone5 的屏幕。

任何想法,我做错了什么?

这是我完整的相关元标签

<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<link rel="apple-touch-icon-precomposed" href="img/icons/ios_icon_52.png">
<link rel="apple-touch-icon" href="img/icons/ios_icon_52.png">
<link rel="apple-touch-icon" sizes="72x72" href="img/icons/ios_icon_72.png">
<link rel="apple-touch-icon" sizes="114x114" href="img/icons/ios_icon_114.png">

编辑:经过一个小时的搜索,我找到了如何强制浏览器适应全高度的解决方案。当我定义启动图像(apple-touch-startup-image)时,我的 iphone 只适合高度。这是我的代码:

<!-- iPhone 4 (Retina) -->
<link href="img/icons/apple-touch-startup-image-640x920.png" 
      media="(device-width: 320px) and (device-height: 480px) and (-webkit-device-pixel-ratio: 2)" 
      rel="apple-touch-startup-image">
<!-- iPhone 5 -->
<link href="img/icons/apple-touch-startup-image-640x1096.png" 
      media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2)" 
      rel="apple-touch-startup-image">
4

5 回答 5

7

我也为此苦苦挣扎了好几个小时,直到我终于发现是我的视口元标记中的“宽度”定义导致了这个问题!删除宽度为我解决了这个问题。

于 2013-07-12T19:05:33.490 回答
1

用这个

<meta name="viewport" content="user-scalable=0, initial-scale=1.0" />

对于启动图像和触摸图标,请阅读此 iOS Web 应用程序(尤其是 iPad)的多个“apple-touch-startup-image”分辨率?

;)

于 2013-01-14T18:58:23.690 回答
0

完全移除视口宽度会导致比它解决的问题更多的问题。为了让 webapps 有正确的视口高度,视口宽度需要大于 320(不幸的是,这是device-width向浏览器报告的值)。这就是我更新视口元标记的方式:

<meta name="viewport" content="width=320.1, user-scalable=0, initial-scale=1.0" />
于 2013-08-23T15:53:34.707 回答
0

我也有这个问题,我通过删除 width=device-width 解决了

于 2013-08-19T00:54:55.553 回答
-1

以下是其他人在同一主题上发布的针对此问题的一些很好的答案:

于 2013-06-19T13:51:13.887 回答