2013-08-28 124 views
3

我們與cordova開發了一個windows phone 8應用程序。 其工作正常,但Windows Phone8後8.0.10328.78發佈頁腳是獲得disrub。 我檢查了代碼前面我得到的視口高度爲768,現在它的800.windows phone 8 cordova視口高度問題

什麼將解決這裏。

+0

只是爲了澄清:對於你來說,頁腳也是部分不在視圖中,就像實際的視口大於屏幕?並且將內容更改爲@ -ms-viewport修補程序(可能已包含此修補程序)不會更改所有行爲? (至少,這是我更新WP8後,完美的好看的應用程序所經歷的) – Michielvv

回答

0

嘗試把這個在你的CSS:

@-ms-viewport{ 
    width: device-width; 
    height: device-height; 
} 
+0

這不起作用,添加高度:device-height;只是使應用縮小了一些,但頁腳仍然部分消失。 – Michielvv

2

我得到這個

解決方案在MainPage.xaml變化

shell:SystemTray.IsVisible="True" 

shell:SystemTray.IsVisible="False" 
1

我已經最近碰到這個是起訴建立一個頁面在WebView中運行。問題是視口高度...使用「height = device-height」使得視口成爲整個屏幕高度(減去應用程序托盤)。

我使用的修復程序是在460的高度聲明一個初始值,然後在文檔加載後動態替換該值。這項技術適用於我測試過的所有設備,包括Windows,Android和iOS。

下面的例子記住不要將視口元標記從它的當前位置移動,JS將頭部中的第二個元標記作爲目標,如果移動它,則需要相應地更新JS。

<head> 
    <meta charset="utf-8"> 
    <meta name="viewport" content="initial-scale=1, user-scalable=no, width=device-width, height=460"> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
    ... 
</head> 

<body> 
    ... 
    <script> 
     (function() { 
      'use strict'; 

      var fixHeight = function() { 
       var viewportHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight; 
       var viewportWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; 

       var viewportContent = 'initial-scale=1, user-scalable=no, width=device-width, height=' + viewportHeight; 
       document.getElementsByTagName('META')[1].content = viewportContent; 
      }; 

      window.addEventListener('load', fixHeight); 
      window.addEventListener('resize', fixHeight); 
     })(); 
    </script> 
</body>