我正在制作一个主页具有与其他页面不同的元素的网站,这些元素应该存在于 Shared/_Layout.cshtml 中的主容器之外,因为它们是全宽的并且不由 @RenderBody() 呈现。
// _Layout.cshtml
<div class="only-homepage-element"></div>
<div class="container body-content">
@RenderBody()
</div>
@RenderBody() 未呈现的所有内容都将在所有页面上可见,因为它们存在于 _Layout.cshtml 中。如何将这些元素仅放在主页上而不放在容器中?
最佳答案
实现这一点的一种方法是在 layout.cshtml
// _Layout.cshtml
@RenderSection("topSection", required: false)
<div class="container body-content">
@RenderBody()
</div>
By setting required to false, you specify that the section is not required in every view that uses this layout.
在您的主页 View 中您可以添加
@section topSection{
<div class="only-homepage-element">
...more html
</div>
}
关于c# - ASP.NET MVC 元素仅在主页上而不在容器中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28002920/