2010-08-20 142 views
3

我想加载一个div并将其绝对放置在移动Safari中 - 想一些像警告框。我如何获得移动Safari浏览器的高度?

我试图使用与顶部集的绝对定位的div至50%,余量的一半高度/宽度:

#overlay-message { 
    position: fixed; 
    top: 50%; 
    left: 50%; 
    padding: 20px; 
    margin: -67px 0 0 -110px; 
    width: 220px; 
    height: 125px; 
} 

但因为我意识到,视口将是比固定位置不同在页面上,并且当浏览器向下滚动时元素以偏移位置显示。我想我可以尝试使用基于window.pageYOffset值的javascript来移动位置,但不幸的是,这显示0是否显示了chrome。

我最后的想法是使用window.outerHeight-window.innerHeight来计算浏览器的Chrome高度,然后根据此值移动div,但不幸的是这不起作用。

我试过(W/jQuery的):

$(window).load(function() { 
    chrome_height = window.outerHeight - window.innerHeight; 
    alert('chrome height is ' + chrome_height + ' outerheight: ' + window.outerHeight + ', innerheight: ' + window.innerHeight); 
}); 

。但我发现是window.innerHeightwindow.outerHeight都是一样的 - 306(我已经有了Safari开发铬) - 所以这似乎不起作用。

任何人都可以在正确的方向指向我吗?

谢谢!

-simon

+0

检查我的回答类似的问题,可能会有点帮助http://stackoverflow.com/questions/8205812/jquery-js-ios-4-and-document-height-problems – 2013-03-30 11:32:05

回答

-3

你就不能screengrab iPhone上的Safari然后将照片导入到Photoshop或相似,衡量它?还记得与“电源键,home键”拍摄的照片按键是两次在屏幕上的实际大小,以便通过2

+1

我试图动态获取屏幕高度,以便可以基于偏移量在屏幕上显示资产。不幸的是,你无法在iphone上加载photoshop;) – Simon 2011-06-28 04:41:59

0

本文describes the vewport problem,尤其是当你非视网膜尺寸的宏伟悲壮点除以你身高为window.innerWidth/Height视网膜使用window.ourerWidht/Height

相关问题