包 | mx.styles |
类 | public class CSSStyleDeclaration |
继承 | CSSStyleDeclaration EventDispatcher Object |
子类 | AdvancedDataGridColumn, DataGridColumn |
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
CSS 规则,如
Button { color: #FF0000 }影响 Button 类的每个实例;如
Button
之类的选择器称为类型选择器,不能以点开头。
CSS 规则,如
.redButton { color: #FF0000 }只影响其
styleName
属性设置为“.redButton”
的组件;如 .redButton
之类的选择器称为类选择器,必须以点开头。
可以使用 StyleManager.getStyleDeclaration()
方法访问自动生成的 CSSStyleDeclaration 对象,向其传递类型选择器
var buttonDeclaration:CSSStyleDeclaration = StyleManager.getStyleDeclaration("Button");或类选择器。
var redButtonStyleDeclaration:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".redButton");
可使用 getStyle()
、setStyle()
和 clearStyle()
方法获取、设置和清除 CSSStyleDeclaration 上的样式属性。
还可以使用 StyleManager.setStyleDeclaration()
方法在运行时创建和安装 CSSStyleDeclaration。
var newStyleDeclaration:CSSStyleDeclaration = new CSSStyleDeclaration(".bigMargins"); newStyleDeclaration.defaultFactory = function():void { leftMargin = 50; rightMargin = 50; } StyleManager.setStyleDeclaration(".bigMargins", newStyleDeclaration, true);
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
defaultFactory : Function
此函数(如果不是 null)通常由 MXML 编译器自动生成。 | CSSStyleDeclaration | ||
factory : Function
此函数(如果不是 null)通常由 MXML 编译器自动生成。 | CSSStyleDeclaration | ||
overrides : Object
如果运行时在 UIComponent 或 CSSStyleDeclaration 上调用 setStyle() 方法,该对象将存储已设置的名称/值对;它们将覆盖由 defaultFactory 和 factory 属性指定的方法所生成的对象中的名称/值对。 | CSSStyleDeclaration | ||
selector : CSSSelector
此属性是用于将 CSS 样式声明与组件进行匹配的可能选择器链和条件的基本选择器。 | CSSStyleDeclaration | ||
selectorIndex : int = 0
此 CSSStyleDeclaration 添加到其 StyleManager 的顺序。 | CSSStyleDeclaration | ||
specificity : int [只读]
确定将多个样式声明应用于组件时的优先顺序。 | CSSStyleDeclaration | ||
subject : String [只读]
主题描述了可能是此样式声明的匹配项的组件的名称。 | CSSStyleDeclaration |
方法 | 由以下参数定义 | ||
---|---|---|---|
CSSStyleDeclaration(selector:Object = null, styleManager:IStyleManager2 = null, autoRegisterWithStyleManager:Boolean = true)
构造函数。 | CSSStyleDeclaration | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
清除该 CSSStyleDeclaration 上的样式属性。 | CSSStyleDeclaration | ||
将事件调度到事件流中。 | EventDispatcher | ||
获取指定样式属性的值,它完全由该 CSSStyleDeclaration 确定。 | CSSStyleDeclaration | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
确定此样式声明是否基于选择器链的匹配性而应用于给定的组件。 | CSSStyleDeclaration | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
设置循环操作动态属性的可用性。 | Object | ||
在该 CSSStyleDeclaration 上设置样式属性。 | CSSStyleDeclaration | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | EventDispatcher |
defaultFactory | 属性 |
defaultFactory:Function
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
此函数(如果不是 null
)通常由 MXML 编译器自动生成。它生成 plain 对象(如 { leftMargin: 10, rightMargin: 10 }
)的副本,包含样式属性的名称/值对;该对象用于构建原型链的一个节点以查找样式属性。
如果该 CSSStyleDeclaration 由使用 MXML 编写的 UIComponent 所有,该函数将对在组件定义的根标签上指定的样式属性进行编码。
如果 UIComponent 以 ActionScript 编写,则该属性为 null
。
实现
public function get defaultFactory():Function
public function set defaultFactory(value:Function):void
factory | 属性 |
factory:Function
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
此函数(如果不是 null
)通常由 MXML 编译器自动生成。它生成 plain 对象(如 { leftMargin: 10, rightMargin: 10 }
)的副本,包含样式属性的名称/值对;该对象用于构建原型链的一个节点以查找样式属性。
如果该 CSSStyleDeclaration 由 UIComponent 所有,该函数将对使用 MXML 为该组件的一个实例指定的样式属性进行编码。
实现
public function get factory():Function
public function set factory(value:Function):void
overrides | 属性 |
overrides:Object
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
如果运行时在 UIComponent 或 CSSStyleDeclaration 上调用 setStyle()
方法,该对象将存储已设置的名称/值对;它们将覆盖由 defaultFactory
和 factory
属性指定的方法所生成的对象中的名称/值对。
实现
public function get overrides():Object
public function set overrides(value:Object):void
selector | 属性 |
selector:CSSSelector
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
此属性是用于将 CSS 样式声明与组件进行匹配的可能选择器链和条件的基本选择器。
实现
public function get selector():CSSSelector
public function set selector(value:CSSSelector):void
selectorIndex | 属性 |
public var selectorIndex:int = 0
此 CSSStyleDeclaration 添加到其 StyleManager 的顺序。MatchStyleDeclarations 必须按其声明顺序返回这些声明
specificity | 属性 |
subject | 属性 |
CSSStyleDeclaration | () | 构造函数 |
public function CSSStyleDeclaration(selector:Object = null, styleManager:IStyleManager2 = null, autoRegisterWithStyleManager:Boolean = true)
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
构造函数。
参数selector:Object (default = null ) — - 如果选择器为 CSSSelector,则支持高级 CSS 选择器。如果对选择器使用了字符串表示形式,则仅支持简单 CSS 选择器。如果 String 以点开头,则它将解释为通用类选择器,否则它必定表示简单类型的选择器。如果非 null,则此 CSSStyleDeclaration 将使用 StyleManager 注册。
| |
styleManager:IStyleManager2 (default = null ) — - 要将此声明设置到其中的样式管理器。如果 styleManager 为 null,则将使用顶级样式管理器。
| |
autoRegisterWithStyleManager:Boolean (default = true ) — - 如果为 true,则在 styleManager 中设置选择器。只有 selector 和 styleManager 都为非 null 时,才可设置选择器。
|
clearStyle | () | 方法 |
getStyle | () | 方法 |
public function getStyle(styleProp:String):*
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
获取指定样式属性的值,它完全由该 CSSStyleDeclaration 确定。
返回值可以为任何类型。
值 null
、""
、false
、NaN
和 0
都是有效的样式值,而undefined
不是有效值;它指示该 CSSStyleDeclaration 上未设置指定样式。可以使用 StyleManager.isValidStyleValue()
方法来测试返回的值。
参数
styleProp:String — 样式属性的名称。
|
* — 指定样式属性的值(如果设置),或 undefined (如果未设置)。
|
matchesStyleClient | () | 方法 |
public function matchesStyleClient(object:IAdvancedStyleClient):Boolean
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
确定此样式声明是否基于选择器链的匹配性而应用于给定的组件。
参数
object:IAdvancedStyleClient — 与样式声明相匹配的组件。
|
Boolean — 如果此样式声明适用于该组件,则为 true,否则为 false。
|
setStyle | () | 方法 |
public function setStyle(styleProp:String, newValue:*):void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
在该 CSSStyleDeclaration 上设置样式属性。
参数
styleProp:String — 样式属性的名称。
| |
newValue:* — 样式属性的值。该值可以为任何类型。值 null 、"" 、false 、NaN 和0 都是有效的样式值,而值 undefined 不是有效值。将样式属性设置为值 undefined 和调用 clearStyle() 方法相同。
|
Tue Jun 12 2018, 11:04 AM Z