首先,我绝不是网页设计师,所以我对我正在做的事情一无所知。
我正在为Unity Webplayer应用程序开发HTML / Javascript,试图让Webplayer占用浏览器的大部分(不是全部)可视区域。页面的<body>
设置为没有边距,也没有滚动条,
<body margin="0" marginwidth="0" marginheight="0" scroll="no">
我正在获取浏览器可视区域的值,如下所示,
winWidth = window.innerWidth;
winHeight = window.innerHeight;
我用Unity调用Unity Webplayer,
unityObject.embedUnity("unityPlayer", "WebPlayer.unity3d", winWidth, winHeight, params);
使用此设置,一切似乎都能正常工作。但是,当我将winWidth
和winHeight
乘以非整数(即0.5或1.9)时,在Firefox 12中未正确缩放高度。无论我放在那里的价值如何,它始终是垂直高度相同(错误)。在这张图片中,innerHeight
和innerWidth
都乘以0.9
,正如您所看到的,高度肯定是错误的 - 这是我得到的错误高度,无论是什么非整体数字乘以它。
此代码在Chrome 19和IE 9中运行良好。如何解决此问题?
答案 0 :(得分:1)
我不知道确切的情况是什么,因为我不熟悉您正在使用的Unity JavaScript界面,但我认为您很有可能需要为播放器指定整数宽度和高度,而你的计算产生一个非整数。
只需编写Math.round(winWidth * 0.9)
而不是winWidth * 0.9
即可获得最接近的整数结果。