将css文件添加到cshtml文件?

时间:2017-03-03 22:16:50

标签: asp.net asp.net-mvc

我正在尝试将css文件添加到基本的html文件中(在/ dashboard中与css文件一起)并且它无法正常工作:

@{
ViewBag.Title = "Index";
}
<head>

    <link rel="stylesheet" href="~/Views/Dashboard/Dashboard.css" type="text/css" />
</head>
<body>
    <h2 id="yes">Index</h2>
    <h1>@ViewBag.test</h1>

</body>

我尝试了多种方法,包括将文件添加到contents文件夹,然后添加

@Styles.Render("~/Content/css")

这是语法问题吗?或者缺乏对布局系统如何工作的理解?仍然围绕着asp.net和MVC ......

2 个答案:

答案 0 :(得分:1)

在正文标记

的末尾尝试以下操作
@section Scripts
{
  <link href="~/Content/yourcssname.css" rel="stylesheet" />
}

答案 1 :(得分:1)

应该在@section Scripts下加载CSS。首先加载CSS是有原因的!

例如,请在此处查看Patrick Sexton的以下参考文献:Call CSS First

确保CSS的调用 文件排在第一位,有助于确保浏览器先将其获取。这样可以节省 通过减少网络通话和不让JavaScript活动来节省时间 延迟浏览器获取CSS

真正的解决方案-首先加载CSS

步骤1

如果您想根据.cshtml文件加载不同的CSS文件,并假设它们都使用相同的_Layout.cshtml,则可以执行以下操作:

_Layout.cshtml HTML标记之间的<head>上,编写以下代码:

@RenderSection("Stylesheets", required: true)

将其放入您的<head>标记中将确保它首先被加载!

注意:required: true部分为可选

步骤2

然后,在您的.cshtml视图中,将其添加到顶部:

@section Stylesheets {

}

然后在其中加载<link>标签。