まず、私は決して Web デザイナーではないので、自分が何をしているのかほとんどわかりません。
Unity Webplayer アプリケーションの HTML/Javascript に取り組んでおり、Webplayer がブラウザーの表示可能領域のほとんど (すべてではない) を占めるようにしようとしています。ページの は、この<body>
ように余白もスクロール バーもないように設定されています。
<body margin="0" marginwidth="0" marginheight="0" scroll="no">
このようにブラウザの表示可能領域の値を取得しています。
winWidth = window.innerWidth;
winHeight = window.innerHeight;
これで Unity Webplayer を呼び出します。
unityObject.embedUnity("unityPlayer", "WebPlayer.unity3d", winWidth, winHeight, params);
このセットアップでは、すべてがほとんど適切に機能するようです。ただし、Firefox 12 で非整数 (つまり、0.5 または 1.9) を乗算するwinWidth
と、高さが適切にスケーリングされません。そこに入力した値に関係なく、常に同じ (間違った) 垂直高さになります。winHeight
この図では、innerHeight
との両方innerWidth
が乗算されて0.9
おり、ご覧のとおり、高さは明らかに間違っています。これは、非整数に何を掛けても、間違った高さになります。
このコードは、Chrome 19 と IE 9 で問題なく動作します。これを修正するにはどうすればよいですか?