剃刀局部视图打破了CSS

时间:2011-10-19 18:58:31

标签: asp.net-mvc razor

这是非常有线的问题,以解释。在我尝试修复CSS之前,我不确定我在做什么,我在这里正在做什么 我有一个索引页面包含很少的小视图。每个较小的视图都有自己的模型类。我渲染这样的小视图:

<div id="left" style="width: 205px; float: left; ">
        @{Html.RenderAction("Index", "Controller3");}
    </div>
    <div id="center" style="width: 540px; float: left;">
        @{Html.RenderAction("Index", "Controller2");}
    </div>
    <div id="right" style="width: 205px; float: left;">
        @{Html.RenderAction("Index", "Controller3");}
    </div>
...

索引视图包含:

@{
    Layout = null;
}
<div>
  ....

视图渲染得很好。但是如果我从较小的索引视图中删除“Layout = null;”那么我的观点有点突破。所有元素都松散了它的位置。现在:
- 这是“Layout = null;”对于这里的某些事情非常重要? - 当一个视图包含这样的较小视图时,我应该从Action方法View()或PartialView()返回吗? - 是否有其他方法可以从较小的小视图中获取大视图,或者这是我做的好方法?

1 个答案:

答案 0 :(得分:2)

如果您没有将Layout = null添加到子视图,则每个子视图都会呈现整个_Layout.cshtml

从子操作返回Partial(...)也会抑制布局。