asp.net-mvc - ASP.NET MVC - 在母版页中引用样式表

标签 asp.net-mvc visual-studio master-pages

我有一个位于/Views/Shared 中的母版页。母版页引用 /Content 中的样式表文件夹。

如果我使用 "../../Content/style.css" 引用样式表,一切正常.但是,我的 web 应用程序不在我们生产环境的根文件夹中,因此相对路径不起作用。

我尝试过 "<%=ResolveUrl("~/content/style.css") %>"这在生产场景中确实有效,但是 Visual Studio 中的设计人员提示我的类是错误的(并且我无法预览页面在设计选项卡中使用 CSS)。

是否有解决方案可以在这两种情况下都有效?我通过编写重置链接标记的服务器端代码在 WebForms 中实现了这一点。我可以在这里这样做,但我想避免它。

最佳答案

试试这个技巧 - 以两种方式包含你的样式表。包括一个带有固定路径引用的 Visual Studio 将用于设计时支持,但将其包含在服务器端注释中,因此它实际上不会在运行时包含。第二个引用是运行时使用的“真实”引用,使用 Url.Content() 无论您的应用是否为子目录,它都可以使用。

<% /* %> 
    <link href="../../Content/Site.css" rel="stylesheet" type="text/css" /> 
<% */ %>

<link href="<%=Url.Content("~/Content/Site.css") %>" rel="stylesheet" 
      type="text/css" />

关于asp.net-mvc - ASP.NET MVC - 在母版页中引用样式表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2104059/

相关文章:

javascript - 动态脚本文件仍然过时

javascript - 自定义 View 引擎来解决 Javascript/PartialView 问题?

c# - 无法从 Entity Framework 中的模型代码生成数据库

javascript - 如果存在具有特定 CSS 类的元素,则执行 Javascript

c++ - array<System::String ^> 标准 C++ 是怎样的?

c++ - 调用某些 MFC 默认构造函数时发生访问冲突

C++:我正在解决一个问题,突然我注意到编译的代码没有返回语句

.net - 使用 Masterpage 在 ASP.Net 页面上进行 javascript 验证的最佳方法是什么?

c# - 为什么 CSS 无法解析母版页上相关链接中的 ~ 符号?

c# - 如何从内容页面的代码后面更改母版页的背景?