Flex中的CSS: (4)内部样式和内联样式最终被编译的AS源文件不
发布时间:2020-12-15 04:58:14 所属栏目:百科 来源:网络整理
导读:看例子。 这些区别有助于我们归纳编译器对不同形式CSS的编译规则。 内部样式: ?xml version="1.0" encoding="utf-8"?s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.c
看例子。 这些区别有助于我们归纳编译器对不同形式CSS的编译规则。 内部样式: <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"> <fx:Style> @namespace s "library://ns.adobe.com/flex/spark"; @namespace mx "library://ns.adobe.com/flex/mx"; s|Button{ color:"16711935" } </fx:Style> <s:VGroup> <s:Button label="button"/> </s:VGroup> </s:Application> 内联样式: <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"> <s:VGroup> <s:Button label="button" color="16711935"/> </s:VGroup> </s:Application> 内部样式被编译后的AS代码: mx_internal function _test1_StylesInit():void { // only add our style defs to the style manager once if (mx_internal::_test1_StylesInit_done) return; else mx_internal::_test1_StylesInit_done = true; var style:CSSStyleDeclaration; var effects:Array; var conditions:Array; var condition:CSSCondition; var selector:CSSSelector; selector = null; conditions = null; conditions = null; selector = new CSSSelector("spark.components.Button",conditions,selector); // spark.components.Button style = styleManager.getStyleDeclaration("spark.components.Button"); if (!style) { style = new CSSStyleDeclaration(selector,styleManager); } if (style.factory == null) { style.factory = function():void { this.color = "16711935"; }; } 内联样式被编译后的AS代码: private function _test1_Button1_c() : spark.components.Button { var temp : spark.components.Button = new spark.components.Button(); temp.label = "button"; temp.setStyle("color",16711935); if (!temp.document) temp.document = this; return temp; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |