我加载CSS在我的母版页...加载CSS动态的ASP.NET
<link rel="stylesheet" href="css/mystyles.css" title="styles" type="text/css" />
现在我要动态地根据一个web.config键装载这个。有没有更好的/标准的做法,或者我的想法是标准方法?
感谢
我加载CSS在我的母版页...加载CSS动态的ASP.NET
<link rel="stylesheet" href="css/mystyles.css" title="styles" type="text/css" />
现在我要动态地根据一个web.config键装载这个。有没有更好的/标准的做法,或者我的想法是标准方法?
感谢
选项1:
您可以从代码添加在你的CSS链接RUNAT =“server”属性和设置href的值隐藏文件,在那里你可以动态设置它。
选项2:
HtmlLink link = new HtmlLink();
link.Attributes["href"] = filename;
link.Attributes["type"] = "text/css";
link.Attributes["rel"] = "stylesheet";
Page.Header.Controls.Add(link);
方案3:
在你的头标记,你可以通过存储在会话变量样式路径使样式表动态:
<link rel="stylesheet" type="text/css" href="<%=Session("PathToStyleSheet") %>" />
选项4:添加整个链路对头代码
void AddStylesheet(string ssRef) {
HtmlHead head = Page.Header;
Literal l = new Literal();
l.Text = "<link href=\""+ssRef + "\" type=\"text/css\" rel=\"stylesheet\" />";
head.Controls.Add(l);
}
...这基本上是相似的选项2
方案5:
放入一个新的子文件夹App_Themes文件你的CSS,并使用web.config文件的主题设定主题名称。然后从您的母版页的代码后面加载主题。要小心;主题按字母顺序加载CSS文件。
我在哪里写选项1?它似乎布局错位...在page_load? – grady 2011-01-06 14:56:09
是的,在page_load事件中。 – 2011-01-06 15:40:15