我知道如何在_Layout.cshtml文件上设置.css文件,但是如何基于每个视图应用样式表呢?
我的想法是,在_Layout.cshtml中,您可以使用<head>标签,但在一个非布局视图中却没有。哪里的<link>标签去?
<head>
<link>
对于在整个站点中重用的CSS,我在以下<head>部分中定义它们_Layout:
_Layout
<head> <link href="@Url.Content("~/Styles/main.css")" rel="stylesheet" type="text/css" /> @RenderSection("Styles", false) </head>
如果需要一些特定Styles于视图的样式,可以在每个视图中定义该部分:
Styles
@section Styles { <link href="@Url.Content("~/Styles/view_specific_style.css")" rel="stylesheet" type="text/css" /> }
编辑:知道@RenderSection中的第二个参数false很有用,这意味着在使用此母版页的视图中不需要该部分,并且视图引擎将很高兴地忽略没有定义“样式”部分的事实在您看来。如果为true,则除非定义了“样式”部分,否则视图将不会呈现,并且将引发错误。