【发布时间】:2010-12-11 17:37:52
【问题描述】:
我有两个母版页。一个 main.Master 和一个 search.Master。
search.Master 是一个嵌套母版页,它位于 main.Master 的“内部”。 为了让我的 CSS 文件与母版页一起工作,我必须放置 runat="server" 属性。像这样:
<link runat="server" href="~/mp/css/master.main.css" rel="stylesheet" type="text/css" />
并且在母版页中工作得很好。 但是,这个嵌套母版页有她自己的样式,所以我尝试再次使用 runat="server" 技巧。我确保我的 asp:content 在里面并输入了:
<link runat="server" href="~/mp/css/master.search.css" rel="stylesheet" type="text/css" />
但是,当我检查我网站的源代码时,那里显示的路径是:
~/mp/css/master.search.css
代替
../../mp/css/master.search.css
有人知道为什么会这样吗?以及如何解决这个问题?
PS:我不想使用 ,因为它搞乱了 masterrepage/theme 关系。 而且我不希望在服务器端代码的标题中插入 CSS 样式表。
【问题讨论】:
-
我不是 ASP.NET 开发人员,但你为什么放 #runat="server" ???
-
添加 runat="server" 允许在将链接发送到客户端之前解析服务器端
-
你确定你知道 "runat='server'" 属性的用途是什么?
标签: c# asp.net css master-pages relative-path