mx.styles
public class CSSStyleDeclaration
继承CSSStyleDeclaration Inheritance EventDispatcher Inheritance Object
子类 AdvancedDataGridColumn, DataGridColumn

CSSStyleDeclaration 类表示一组 CSS 样式规则。MXML 编译器在和 Flex 应用程序关联的 CSS 文件中为每个选择器自动生成一个 CSSStyleDeclaration 对象。

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();
  newStyleDeclaration.defaultFactory = function():void
  {
      leftMargin = 50;
      rightMargin = 50;
  }
  StyleManager.setStyleDeclaration(".bigMargins", newStyleDeclaration, true);

另请参见

mx.core.UIComponent
mx.styles.StyleManager
Using the StyleManager class


公共属性
 属性定义方
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
  defaultFactory : Function
此函数(如果不是 null)通常由 MXML 编译器自动生成。
CSSStyleDeclaration
  factory : Function
此函数(如果不是 null)通常由 MXML 编译器自动生成。
CSSStyleDeclaration
 Inheritedprototype : Object
[静态] 对类或函数对象的原型对象的引用。
Object
受保护的属性
 属性定义方
  overrides : Object
如果运行时在 UIComponent 或 CSSStyleDeclaration 上调用 setStyle() 方法,该对象将存储已设置的名称/值对;它们将覆盖由 defaultFactory 和 factory 属性指定的方法所生成的对象中的名称/值对。
CSSStyleDeclaration
公共方法
 方法定义方
  
CSSStyleDeclaration(selector:String = null)
构造函数。
CSSStyleDeclaration
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。
EventDispatcher
  
清除该 CSSStyleDeclaration 上的样式属性。
CSSStyleDeclaration
 Inherited
将事件调度到事件流中。
EventDispatcher
  
getStyle(styleProp:String):*
获取指定样式属性的值,它完全由该 CSSStyleDeclaration 确定。
CSSStyleDeclaration
 Inherited
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
EventDispatcher
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
从 EventDispatcher 对象中删除侦听器。
EventDispatcher
 Inherited
设置循环操作动态属性的可用性。
Object
  
setStyle(styleProp:String, newValue:*):void
在该 CSSStyleDeclaration 上设置样式属性。
CSSStyleDeclaration
 Inherited
返回指定对象的字符串表示形式。
Object
 Inherited
返回指定对象的原始值。
Object
 Inherited
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。
EventDispatcher
事件
 事件 摘要 定义方
 Inherited[广播事件] Flash Player 或 AIR 应用程序获得操作系统焦点并变为活动状态时将调度此事件。EventDispatcher
 Inherited[广播事件] Flash Player 或 AIR 应用程序失去操作系统焦点并变为非活动状态时将调度此事件。EventDispatcher
属性详细信息
defaultFactory属性
public var defaultFactory:Function

此函数(如果不是 null)通常由 MXML 编译器自动生成。它生成 plain 对象(如 { leftMargin: 10, rightMargin: 10 })的副本,包含样式属性的名称/值对;该对象用于构建原型链的一个节点以查找样式属性。

如果该 CSSStyleDeclaration 由使用 MXML 编写的 UIComponent 所有,该函数将对在组件定义的根标签上指定的样式属性进行编码。

如果 UIComponent 以 ActionScript 编写,则该属性为 null

factory属性 
public var factory:Function

此函数(如果不是 null)通常由 MXML 编译器自动生成。它生成 plain 对象(如 { leftMargin: 10, rightMargin: 10 })的副本,包含样式属性的名称/值对;该对象用于构建原型链的一个节点以查找样式属性。

如果该 CSSStyleDeclaration 由 UIComponent 所有,该函数将对使用 MXML 为该组件的一个实例指定的样式属性进行编码。

overrides属性 
protected var overrides:Object

如果运行时在 UIComponent 或 CSSStyleDeclaration 上调用 setStyle() 方法,该对象将存储已设置的名称/值对;它们将覆盖由 defaultFactoryfactory 属性指定的方法所生成的对象中的名称/值对。

构造函数详细信息
CSSStyleDeclaration()构造函数
public function CSSStyleDeclaration(selector:String = null)

构造函数。

参数
selector:String (default = null) — 如果非 null,该 CSSStyleDeclaration 将使用选择器值在 StyleManager 中进行注册。
方法详细信息
clearStyle()方法
public function clearStyle(styleProp:String):void

清除该 CSSStyleDeclaration 上的样式属性。这和将样式值设置为 undefined 相同。

参数

styleProp:String — 样式属性的名称。

getStyle()方法 
public function getStyle(styleProp:String):*

获取指定样式属性的值,它完全由该 CSSStyleDeclaration 确定。

返回值可以为任何类型。

null""falseNaN0 都是有效的样式值,而undefined 不是有效值;它指示该 CSSStyleDeclaration 上未设置指定样式。可以使用 StyleManager.isValidStyleValue() 方法来测试返回的值。

参数

styleProp:String — 样式属性的名称。

返回
* — 指定样式属性的值(如果设置),或 undefined(如果未设置)。
setStyle()方法 
public function setStyle(styleProp:String, newValue:*):void

在该 CSSStyleDeclaration 上设置样式属性。

参数

styleProp:String — 样式属性的名称。
 
newValue:* — 样式属性的值。该值可以为任何类型。值 null""falseNaN0 都是有效的样式值,而值 undefined 不是有效值。将样式属性设置为值 undefined 和调用 clearStyle() 方法相同。