ASP.Net + MasterPage&动态内容

时间:2013-02-02 20:16:18

标签: asp.net css

我正在开发一个项目并且需要让导航栏保持静态(例如facebook),而不是CSS固定位置,但是当我点击菜单中的项目来加载其内容时, 仅内容区域刷新

因此我相信我需要在页面中心有一个容器来加载动态内容。现在,导航栏包含在我的所有aspx页面中,这些页面是相同的,并且栏会在页面之间刷新。

我阅读了几篇文章/文章,我想到的方法是将每个aspx包装到usercontrols中,然后在从基于本文的相应菜单项调用后,将其动态加载到我的母版页内的div中: / p>

http://msdn.microsoft.com/en-us/library/c0az2h86%28v=VS.100%29.aspx

我的一个页面使用jquery选项卡显示/隐藏父div中的多个子div内容,这意味着所有div内容都在一个页面中,但是现在我正在处理30个以上的aspx页面,这意味着这种方式应该是但那是我需要的概念。

问题是我有超过30个巨大的aspx页面,并且不确定这是否可行。对我的情况有任何建议吗?感谢。

2 个答案:

答案 0 :(得分:3)

所以你只想让你的菜单栏保持固定?那么请使用css位置属性fixed

将您的菜单栏包含在包含div的内容中,然后将其设置为样式。

div#menu{
    position: fixed;
    height: 25px;
    width: 100%;
}

然后为您的页面内容提供25px的上边距

div#content{
    margin-top: 25px;
}

这将导致您滚动时导航始终保持固定在页面顶部,而您无需对页面/用户控件/动态加载内容执行任何操作。

我在这里放了一个小例子。 CSSDeck Example

答案 1 :(得分:1)

问题是您希望它是如何干净的或脏

真的干净吗? - >建立一个Single Page Application。这可能会让您重写应用程序的大部分内容。

老派? - >使用iFrame并从页面中删除(部分?)MasterPage。

更脏吗? - >将您的内容加载到UpdatePanel。您必须再次从页面中删除MasterPage。

所有解决方案都会向您展示导航挑战,如here所述。