2009-10-27 69 views
1

沒有人知道做下面的一個好方法,我需要通過CSS鏈接最多可以將5個CSS文件合併爲一個,這對於訪問服務器來說是相當糟糕的..但它可以幫助我保持它的組織。 。ASP.NET MVC通過代碼(運行時/開發)修改CSS鏈接?

在運行時,我下意識鞏固和再壓縮所有的CSS文件到1 ...

什麼,我想知道的是如何在設計時和運行時鏈接CSS文件在我的源不同?

是否有一些特殊的解決方法,我可以用< %%>標籤做些什麼?

謝謝

回答

1

你可以有一個鏈接到合併後的文件在你的HTML和使用生成事件到你的獨立的人在合併到一個網絡樂。這樣,在開發過程中,您始終可以看到完整的單獨文件,但設計人員(以及運行時)將始終看到組合文件。設計師不關心有一個或五個文件,但你是這樣做的。這樣你就不必做任何有條件的設計時邏輯,你的代碼就會更乾淨。

1

我用if(false)與HtmlHelper擴展來實現類似的效果。它可能看起來像:

<% if (false) { %> 
    <link href="../content/styles/jquery-ui.css" ... 
    <link href="../content/styles/site.css" ... 
<% } %> 
<%= Html.CSS("jquery-ui.css", "site.css", ...) %> 
+0

if(false)=在設計時執行,即獲取所有用於設計的css,然後在運行時不顯示它? - 謝謝回覆! – 2009-10-27 17:43:43

+0

是的。代碼塊不在設計模式下執行,但鏈接是。在運行時,如果(false)避免在測試失敗後包含鏈接。 – tvanfosson 2009-10-27 17:58:00

1

你可以嘗試在您的視圖或母版頁以下:

1)留在,因爲它們是

2 min'ed CSS鏈接)使用此條件阻止直接包括CSS文件,根據需要設計時間:

<% if (this.DesignMode) { %> 
<link rel="stylesheet" type="text/stylesheet" href="css/styles.css" /> 
<% } %>