2011-06-20 37 views
7

在我的應用程序中,我對瀏覽器有不同的CSS。就像爲IE6,IE7等分開......也從右到左(語言)我們有不同的CSS。將所有CSS合併爲一個StyleSheet

我的問題是有可能將所有的CSS組合成一個樣式表。

這會減少響應時間嗎?

在此先感謝!

+0

這是可能的...我動態地用php做到這一點,以便樣式表在單獨的文件中,但它們被加載爲一個。 – AllisonC

+0

爲什麼低估他?他實際上是在問一個非常有趣的問題。 – easwee

+0

我有同樣的問題。我只是想能夠將我所有的CSS合併到一個文件中。如果可能的話,使用更少的進口。 – Chris

回答

0

如果您爲不同的瀏覽器使用單獨的css文件,則應該只加載瀏覽器特定的css文件。在這種情況下,通過組合它們你不會看到太多節省。一般來說,你應該嘗試跨瀏覽器的css。

2

是的,可以將所有CSS文件合併成一個CSS文件。您可以導入任意數量的附加樣式表在主css文件,例如:

@import url('ie6.css'); 
@import url('ie7.css'); 
@import url('ie8.css'); 
+1

@import仍然會對服務器做一個額外的請求,所以他沒有獲得任何東西。 – easwee

+0

他問是否可以將所有CSS文件合併到一個樣式表中,並且我回答是可以的。 – Roman

+0

他也在詢問有關響應時間,所以我認爲我應該添加一條評論 - 我沒有降低你的評價 - 答案沒問題。 – easwee

2

你可以使用,只有在特定的瀏覽器觸發某個屬性的黑客編寫CSS。

像:

*color: black; /* for IE7 and below */ 
_color: black; /* for IE6 and below */ 

但是,這將是一個十個分量的痛苦和也將不再驗證你的CSS。雖然你減少請求(1或2?)我仍然沒有看到問題,如果你正在使用條件註釋來加載瀏覽器特定的CSS爲IE6爲例。它仍然會添加1個更多的請求,其實並不多。如果您認爲IE6的使用越來越少,也許只有10%的用戶會實際執行該請求。

0

可能嗎?是。實際的?沒那麼多。特別是當涉及到瀏覽器特定的CSS。你可以使用CSS黑客,但恕我直言,他們是相當醜陋的事情,破壞了CSS的可讀性。相反,我會使用條件註釋conditional comments。這對於IE來說是世界其他地方嘗試使用一個適當的CSS。

至於時間縮短,只要你使用靜態css文件下載速度增益可以忽略不計。大多數靜態文件都是緩存的,所以只保存一些只返回「Not Modified」的請求。

相關問題