如何在 ASP.NET MVC 2 项目中以编程方式设置样式表?
所以..这是我在 MVC2 项目中的 site.master ASPX 文件的上半部分:
<head runat="server">
<link href="<%= ViewData[SomeNamespace.StyleSheetKey]; %>" rel="stylesheet" type="text/css" />
</head>
<div foo="<%= (string) ViewData[SomeNamespace.StyleSheetKey] %>">bar</div>
现在 div 标签正确地呈现样式表名称,但链接标签中的样式表名称按其写入方式呈现,而不被解释。此外还添加了路径前缀。
因此,ASP.NET 引擎似乎想要处理链接标记中 href- 参数中的文本,“帮助”我使用正确的相对路径为我的 .css 文件添加前缀。
我现在如何能够以编程方式设置样式表的名称?
So.. this is the upper part of my site.master ASPX file in an MVC2 project:
<head runat="server">
<link href="<%= ViewData[SomeNamespace.StyleSheetKey]; %>" rel="stylesheet" type="text/css" />
</head>
<div foo="<%= (string) ViewData[SomeNamespace.StyleSheetKey] %>">bar</div>
Now the div tag renders the stylesheet name properly, but the one in the link-tag is rendered as it is written, without being interpreted. In addition a path prefix is added.
So the ASP.NET engine seems to want to hassle with the text in the href- argument in the link tag, "helping" me to prefix my .css file with the correct relative path.
How will I now be able to set the name of the style sheet programmatically?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
好的,尝试从
标记中删除 runat="server" 标记
Ok, Try removing the runat="server" tag from the
<head>
tag这可以工作
,但不行
或者正如 The_Butcher 所说,从标头中删除
runat="server"
This will work
but this doesn't
Or as The_Butcher says, remove the
runat="server"
from the header