有没有办法在App_Theme文件后面放置一个CSS文件

有没有办法在App_Theme文件后面放置一个CSS文件

问题描述:

有没有办法将我的自定义CSS文件放到App_Themes文件夹之外?在所有其他CSS文件都被Skin/App_Themes文件夹加载后?有没有办法在App_Theme文件后面放置一个CSS文件

当应用程序运行时,App_Themes文件总是放在最后。但是我有一个自定义的CSS文件,我想最后加载,它是从外部URL引用的,并且不在App_Themes文件夹中。

有没有办法做到这一点?

+0

难道你不能只是添加一个CSS包含标签,无论你想要它吗? – 2015-02-06 19:40:06

+0

@JonathanWood,你是什么意思?我把链接标签与CSS文件指向我的外部文件。但是,当.Net应用程序运行时,我的文件会放在应用程序注入到App_Themes文件夹中的头标签中的文件之前。即使我把我的CSS文件放在结束标题前面。我想让我成为列表中的最后一个,因为它们将覆盖其他CSS文件。 – ClosDesign 2015-02-06 19:46:21

您只需要在添加主题CSS后运行的事件中手动添加HtmlLink控件到页面。在显示页面之前,Page_PreRender事件最后运行。

protected void Page_PreRender(object sender, EventArgs e) 
{ 
    var myCss = new HtmlLink(); 
    myCss.Href = "http://www.example.com/scripts/myCss.css"; 
    myCss.Attributes.Add("type", "text/css"); 
    myCss.Attributes.Add("rel", "stylesheet"); 

    // Add the css reference at the end of the head after everything else 
    Page.Header.Controls.Add(myCss); 
} 
+0

因此,不要直接将它添加到.master页面,或将其包装在一个简单的asp标签中,并将其放在最后。我的问题是,该项目已经编译完成。我不知道我是否想将它添加到.master页面内联。但我想我可以。 – ClosDesign 2015-02-06 20:25:29