我尝试构建一个适用于几乎所有设备/浏览器的Web应用程序。为此,我的实际方法是在
body
中定义一个div
,该div
将占据整个body的空间:#mydiv {
width: 100%;
height: 100%;
}
我使用以下方式计算可用空间的宽度和高度:
var Width= $("#mydiv").width();
var Height= $("#mydiv").height();
我完成后会用jQuery/CSS(百分比、top属性、绝对定位等)定位我的元素,用Raphael.js进行绘制……
我发现这种方法并不总是有效的,特别是在一些将附加组件显示为HTML的浏览器中。例如,在我的Chrome浏览器中,当我安装一个工具栏附加组件时,这个工具栏会作为HTML元素呈现在页面代码源中,并带有自己的样式(top=0,fixed position等)。结果是我的所有top位置工作都被工具栏的高度所影响。
如何计算body的净高度?有哪些可替代的方法来创建适应浏览器大小的网页(我指的是DOM注入到我控制之外的元素,例如ask.com工具栏……)?