我知道有關於同一主題的問題,但對於HTML。關於在Flex應用程序中使用外部樣式表有什麼好的約定?你會如何分解樣式表(樣式表的名稱及其包含的內容)?Flex外部樣式表公約
回答
Flex並不是我處理過的東西,但我做了一些研究。它看起來像代碼調用一個遠程樣式表是這樣的:
<mx:Style source="com/example/assets/stylesheet.css" />
Flex Quick Start: Building a simple user interface: Styling your components這樣說:
注意:你應該儘量限制 數量在 應用程序中使用的樣式表,並僅在 應用程序( 包含該標籤的文檔)中的頂級文檔中設置樣式表 。如果 您在子文件 文檔中設置樣式表,則可能發生意外的結果 。
這似乎意味着多個樣式表是不可能的。這聽起來像你想要做的是組織你的樣式表,檢查出Organizing Your Stylesheets和Architecting CSS的方法的一些想法。它看起來像有類和基本標籤,但W3C stylesheet specifications與Flex樣式表規範不同。
作爲非Flex開發人員,命名空間看起來很有趣的方式來組織命名空間:How to use the new CSS syntax in Flex 4。
感謝有關在應用程序頂層使用樣式表的信息 – asawilliams 2009-10-26 15:28:50
其中一個答案能夠解決問題嗎?如果是的話,考慮接受好的答案。如果您需要更多信息,請考慮更新問題,以幫助人們向您提供您可以接受的答案。 – artlung 2009-10-27 16:03:16
文章「組織您的樣式表」解決了如何組織css文件的問題,但它似乎與Flex沒有關係。所以,我無法接受答案 – asawilliams 2009-11-06 19:17:18
Flex在您發佈項目時編譯外部CSS文件。
有一種方法可以在運行時使用Flex加載CSS;可以通過將CSS文件編譯爲SWF文件並在運行時使用StyleManager.loadStyleDeclarations
加載它們來完成。
查看LiveDocs on Stylesheets at Run Time瞭解更多信息。
我們在組織樣式表使用的一些約定:
- 有一個
main.css
樣式表保存所有數據的剝皮的基本應用程序。 - 有一個
fonts.css
樣式表來存儲主應用程序中的所有字體,因爲這些可能會相當混亂。
main.css樣式表通過<mx:Style source="main.css"/>
標籤包含在主SWF中。我們儘可能少加載我們的應用程序,一旦所有內容都加載完畢,如果我們需要立即顯示一些文本(有時我們只是播放視頻,如果它是廣告網站的話),我們會淡入/補間主要元素並加載fonts.css通過StyleManager.loadStyleDeclarations
在運行時。
- 如果我們有一個管理面板,我們有一個
admin.css
樣式表,我們在運行時加載,因爲主應用程序不需要它。
我們並不需要比再瓜分CSS,因爲我們通常會創建一個Theme一整套皮膚,所以樣式表僅僅是應用這些外觀組件和是相當瘦(使用Flex 4 )。我傾向於將樣式表分成任何更小的樣式(比如「pages.css」,「comments.css」,「popups.css」,甚至是「controls.css」等),因爲它會過度管理和管理太多很少有回報。這在HTML中很常見,但是這是因爲HTML需要CSS才能表現出色; Flex可以完全沒有CSS。
在開發,我們的一個通常發展大部分皮膚馬上(具有默認線框的設置,像那些ScaleNine發現,因爲他們做的Photoshop /閃光燈/後遺症。有沒有辦法不用重新編譯如果你修改了css swf,但是如果它是在運行時加載的,你只需要重新編譯css文件而不是主要的swf,這在覈心皮膚開發過程中很有用,但並不是真正有用的。
我試着保留主要樣式表在開發過程中(在一個自定義主題中)是分開的,並且它使得開發變得非常困難,因爲每次我進行更改時都必須單獨重新編譯css,有時我必須重新編譯主應用程序,難以追蹤的錯誤等,然後我是comp在兩個不同的應用程序。所以我建議保留主應用程序的主要CSS文件的一部分。
如果您想要運行時css而無需重新編譯任何東西,請嘗試Ruben's CSS Loader並查看the source。但是,這將會導致運行時性能成本。
- 1. Div與外部樣式表?
- 2. iTextSharp的外部樣式表
- 3. 外部字體樣式表
- 4. 禁用外部樣式表
- 5. 外部樣式表與鉻
- 6. 通過外部樣式表
- 7. 列表樣式圖像不受外部樣式表
- 8. 內聯列表式樣式不重寫外部樣式規則
- 9. php中的外部樣式表(css)
- 10. 外部CSS樣式錶鏈接失敗
- 11. 外部CSS樣式表無法加載
- 12. 外部樣式表不起作用
- 13. 外部樣式表不工作
- 14. 使用JavaScript添加外部樣式表
- 15. 在Qt中加載外部樣式表
- 16. 轉:無法渲染外部樣式表
- 17. 外部CSS樣式表不起作用。
- 18. 爲什麼內部樣式表工作而外部樣式表不能?
- 19. 外部樣式表與JavaScript添加樣式標籤
- 20. 如何從JavaScript的外部樣式表派生元素樣式?
- 21. 外部CSS樣式VML
- 22. 外部樣式表不顯示任何樣式,但內部樣式不會顯示任何樣式
- 23. 將DNF公式表示爲ILP約束
- 24. 從外部樣式表中不採取CSS樣式的搜索框表格
- 25. SQL外部約束
- 26. 在Flex圖表外部顯示AxisRenderer
- 27. 外部和內部HTML表格css樣式衝突
- 28. Flex 4中樣式表的問題
- 29. 如何訪問使用外部樣式表的javascript對象的樣式屬性?
- 30. 爲什麼內部樣式表使用由外部樣式表覆蓋的類選擇器?
另一個相關的問題:是否有一種方法可以使css在編譯文件之外,這樣當更改CSS時,Flex應用程序會更改而不重新編譯? – ustun 2009-10-26 11:50:39