2010-08-17 71 views
0

这里的该场景:
我有一个asp.net网页,它显示在gridview中的动态数据。作为屏幕大小和可滚动框架内页面大小

我正在使用母版页来显示页面的页眉和页脚,并且此gridview正在contentplaceholder中的div内显示。

问题:
我想的是,所显示的页面的大小仍然为用户常数和必须等于其浏览器的可用显示区域的大小和内容通过滚动可见DIV。

类似页眉和页脚的排序保持在同一位置,并且它内部的内容是可滚动的。

我真的不知道如何做到这一点。

任何有关此事的帮助是非常感谢。

谢谢。

回答

2

尝试一些jQuery的:

function changeHeight(){ 
    var winHeight = $(window).height(); 
    var heightOfHeaderAndFooter = 200px; // change this to what you need 
    $('#myDiv').height($(window).height() - heightOfHeaderAndFooter); 
} 
$(window).resize(function() { // changes height with browser window 
    changeHeight(); 
}); 
$(document).ready(function() { // changes height on load of the page 
    changeHeight(); 
}); 

你需要的是你的DIV使用width:auto和动态地改变它的高度始终保持页脚在页面的底部。此外,请确保您的div有overflow-y:scroll

+0

我假设你想只向上滚动,并从你的'div'里面下来,如果这是错误的,让我知道 – 2010-08-17 19:07:21

+0

嗨皮特,感谢您的答复,但我没有jQuery的经验。在做了一些搜索工作后,我觉得在这里问这样一个新手问题真的很愚蠢(感谢我对css的缺乏经验)。我想要实现的布局可以使用此页面上的教程来完成:尽管由于您是唯一一个关心回复帖子的人,所以我将您的答案标记为已回答。谢谢! – Anchit 2010-08-18 11:08:21

1

代码片段:

  1. divMain.style.height - > DIV的像素含有GridView的高度。此div标签也有样式设置style="overflow-y:auto;"

  2. document.documentElement.clientHeight - >您的显示器的工作/客户区的高度。

  3. document.getElementById("divMain").offsetTop - >divMain之前的内容高度。

  4. 25 - >这是我的额外页脚的高度。
  5. 像素结果是divMain可用的高度。
divMain.style.height = (document.documentElement.clientHeight - document.getElementById("divMain").offsetTop - 25) + "px"; 

希望这有助于。