由於virturl目錄名稱不是固定的,我現在寫了下面的代碼將.css文件包含在.aspx頁面中。在asp.net中包含.css文件
<link rel="Stylesheet" href="<%= ResolveUrl("~/Css/xxx.css") %>" type="text/css" />
問題是,當我在標籤中使用「ResolveUrl」時,IDE總是咆哮着所有的CSS類都是未定義的。
有沒有更好的方法來定義.css文件,包括?
由於virturl目錄名稱不是固定的,我現在寫了下面的代碼將.css文件包含在.aspx頁面中。在asp.net中包含.css文件
<link rel="Stylesheet" href="<%= ResolveUrl("~/Css/xxx.css") %>" type="text/css" />
問題是,當我在標籤中使用「ResolveUrl」時,IDE總是咆哮着所有的CSS類都是未定義的。
有沒有更好的方法來定義.css文件,包括?
你可以用HTML服務器控件(注意runat="server"
)像這樣做:
<link rel="stylesheet" runat="server" media="screen" href="~/css/styles.css" />
這仍然會爲您解析虛擬目錄。它還應該支持aspx頁面上的css intellisense和警告。
IDE不會知道您正在包含該css文件,只是因爲它會在運行時生成,而不是在它之前生成。
如果您需要intelisense手動將其手動並在需要時進行更改。
您可以在<% if (false) { %>
內靜態包含這些文件。
這樣,Visual Studio的IntelliSense將會看到這些文件,但ASP.Net運行時不會。
(和if (false)
塊應該被編譯器優化掉,所以應該是零性能損失)
Arrrr你輸入的比我快!這是IMO的最佳解決方案。您可以繼續按現在的方式引用文件,然後使用物理路徑複製所有引用,並將重複文件包裝在一個'if(false){ – 2010-07-22 01:49:50
}我認爲即使沒有runat =「server」也可以工作 – 2010-07-22 01:56:53
代字號(〜)URL語法需要runat =「server」。 – 2010-07-22 03:07:29
太棒了!萬分感謝! – but 2010-07-22 06:01:01