動態生成的css
回答
另一個好處是,那就是在頁面加載每增加資產減慢了整體頁面加載,因爲瀏覽器是通常只在給定的時間同時加載4個資產。
但是,在頁面加載時完成所有的組合操作可能會導致頁面的運行速度與單獨處理的速度一樣慢......取決於需要通過迭代來構建最終的css塊。
在性能方面,我認爲javascript不太可能會優雅/高效地替換已包含在組合css文件中的樣式。
另一件事情是,在生產環境中,你也可以做另一個選擇,即使用一個庫來預先生成一組縮減,優化(並在JS的情況下模糊)代碼,然後有1 js文件和1個css文件加載在頁面加載時,這反過來你會緩存速度/加載的好處。對於這個我想,Boilerplate lib有一個腳本。
一天結束:能量既沒有創造也沒有被破壞 - 如果你不小心,你的優化在一個地方,並在別處受到傷害。
更少是絕對可怕的,我不認爲你應該嘗試使用JavaScript中的自定義庫生成CSS。將你的javascript儘可能與你的CSS分開是一個好主意。
我們使用某些元素class =「」屬性來觸發javascript邏輯,但它們絕不會與我們較少樣式中使用的類重疊。 (我們使用不同的套管規則來防止發生重疊)。
動態加載你的css的部分也沒有太多好處。我們在開發過程中運行less.js javascript,但我們運行'lessc'編譯器進行生產,因此我們總是有1個樣式表(並使用YUI Compressor對其進行壓縮)。
除非總的css是絕對的龐大,否則我們更喜歡在第一次點擊時加載一個大的css文件,然後將文件緩存。
確保您所有的css在任何時候都被加載(而不僅僅是部分)也有助於強制執行沒有衝突的規則。如果您必須重構應用程序並將其中的部分內容移至其他網址(突然出現所有突然重疊的情況),這將對您有所幫助。
所以我建議,而不是試圖通過動態生成所需的樣式來解決您的問題,您可能只需要更好的組織爲您的CSS。
如果您正在尋找有效使用較少的一個很好的例子,看看Twitter Bootstrap
- 1. 生成動態CSS
- 2. 生成動態的CSS
- 3. 生成動態CSS 4
- 4. 角2+動態地生成的CSS
- 5. Jquery .css和動態生成的圖像?
- 6. 動態生成本地的css
- 7. HTML/CSS動態數字生成器
- 8. 使用php和javascript生成動態CSS
- 9. 爲動態圖像生成CSS精靈
- 10. 輸出緩存動態生成CSS
- 11. 使用JavaScript動態生成@ -webkit-keyframes CSS?
- 12. 用css和javascript動態生成圖像
- 13. 添加CSS樣式動態生成的項目(jQuery的,CSS)
- 14. 動態生成不生效的CSS內容
- 15. 自動完成動態生成的div
- 16. 動態生成WSDL
- 17. 動態生成XAML
- 18. 動態GridView生成
- 19. 動態生成UITextFields
- 20. 動態生成列
- 21. 生成動態html
- 22. 動態生成C#
- 23. 動態生成ImageViews
- 24. 動態類生成
- 25. 動態生成asp.net
- 26. 動態生成jstree
- 27. 動態SASS生成
- 28. 動態生成TableRow
- 29. 動態生成sitemap.xml
- 30. 動態生成UITableViews
Thx。在我的情況下 - 模塊化應用程序 - 用戶應該能夠選擇插件並自定義他們的風格,所以我不可能真的有一個大的CSS文件。 – Christophe 2012-04-02 21:57:44