asp.net-mvc - 将元素扩展到 _Layout 容器 MVC ASP.NET 之外(首选方法?)

标签 asp.net-mvc twitter-bootstrap

我正在尝试使用 MVC/Bootstrap/ASP.NET...

具体来说,我试图理解一种最佳实践,允许元素根据给定的逻辑(在本例中基于加载的 View )扩展到其容器之外。 (我也阅读了有关显示基于角色成员身份的元素的线程)。

我正在尝试复制此处显示的布局:URL To Sample 。它有一个 Bootstrap 轮播,我喜欢延伸整个宽度但仅显示在索引(主页)页面上的位置。在经典 MVC 结构之外实现此功能非常简单。

通过 MVC,我们拥有共享的 _Layout.cshtml 和加载 View 的容器...

<div class="container body-content">
    @RenderBody()
</div>

轮播似乎需要其中之一

  • 放置在 _Layout 页面上,如果加载的 View 不是索引页面,则隐藏
  • 放置在索引页上并允许超出容器的宽度

我已经尝试了在线程中找到的内容,但无法干净地复制此布局。有人可以给点指导吗?

最佳答案

你可以stretch it with css ,或者更干净的解决方案可能是将其放在自己的(可选)部分中:

在_布局中:

@RenderSection("carousel", required: false)
<div class="container body-content">
    @RenderBody()
</div>

在您的首页/主页(索引)文件中:

@section carousel {
    // code for carousel
}

正如@Alex 所评论的,如果您的主页与其他页面明显不同,您可以使用单独的布局文件。为此,只需像这样设置“Layout”全局字符串即可;

在您的首页/主页(索引)文件中:

@{
    Layout = "~/Views/Shared/_FrontPageLayout.cshtml"; // to use a separate file
    Layout = null; // to not use a layout file
}

关于asp.net-mvc - 将元素扩展到 _Layout 容器 MVC ASP.NET 之外(首选方法?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21366325/

相关文章:

html - 如何使用 MVC4 从 TempData 解释 HTML?

asp.net-mvc - 是否应该在 Razor View 中使用函数?

c# - 如何下载 log4Net 生成的日志文件

javascript - 如何ajax从模态表单结果插入值?

javascript - 如何使 Bootstrap 仅在 Div 内运行?

html - 确保 CSS 不会影响所有具有父类的页面

asp.net-mvc - 在没有www的情况下访问ASP.Net MVC网站会引发错误

google-chrome - 为什么 chrome 在展开浏览器窗口时有时无法重新绘制页面?

css - Bootstrap 中的 Fontawesome 图标不是方形的

css - 在分页中包含选择 - bootstrap