2011-11-18 39 views
0

我正在看帆布应用程序The Eatery已创建,我注意到布局如何流畅。具体来说,#main列的左边距随着页面变宽而放大。我用Chrome浏览器查看了CSS,我看不到哪些属性设置为从左边缘开始的默认距离,但随着页面长度增长。有一个内联样式,但我不明白它是如何相对于窗口的宽度。如何创建相对内联样式?

我可以使用像left:5%;之类的东西来复制它,但我不认为这就是特别在这个页面上发生了什么。因为,在检查器中观察它,它是基于像素的大小,并使用百分比保持CSS中的百分比。任何想法发生在那个页面上,我似乎无法复制?

我已经看了很多固定宽度的问题,但没有一个答案似乎这样做。

+0

我在FF看着它,我没有看到'#main'左边缘有任何移动,所以我不确定我是否误解了你正在看的东西,或者它是什么东西只发生在Chrome中。 – ScottS

+0

对不起,不保证金。它是基于窗口宽度而改变的''''left''''。 – Slick23

+0

它不会改变我(留在20px),所以我想我不会有太多的帮助来解决它:-)。虽然如果它正在改变,那么它必须是一个脚本重置窗口调整大小的位置。 – ScottS

回答

2

这是由JavaScript onresize事件。

在该特定的代码是:

var a=$(window).width() 
b=184; 
$("#main").css("left", Math.max((a-500-600)/2, 20)), 
    $(window).height() < 800 ? 
    ($("#hand, .hand-image").addClass("smaller") , b=96) : 
    $("#hand, .hand-image").removeClass("smaller"), $("#app-store").css("right", Math.min(a-850, b)); 

- 从源代码中删除 -

的思想很简单,采取的文件或窗口的宽度,并移动div来的位置基于大小。在这种情况下,左边的值在(a-500-600)/2和20(px)之间较高。

+0

我想这可能是JS。谢谢! – Slick23