Flex中使用CSS控制页面样式

Using file

  • Stylebounding.mxml
  • Stylebounding2.mxml
  • myCSS0329.css

 

Flex4中使用CSS控制样式,既可以直接在MXML文件中写样式,也可以新建一个CSS文件,在这个文件中写样式,后者更便于管理。

 

先来看看直接在mxml文件中写样式:

  • 方法一:直接在想要控制的控件中直接写CSS元素,如left,right,top等;
  • 方法二:还可以将CSS样式写在<fx:Style><fx:Style/>标签中,示例代码如下:
 1 <?xml version="1.0" encoding="utf-8"?>
 2 <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
 3                xmlns:s="library://ns.adobe.com/flex/spark" 
 4                xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
 5     
 6     <fx:Declarations>
 7         <!-- 将非可视元素(例如服务、值对象)放在此处 -->
 8     </fx:Declarations>
 9     
10     <!--在MXML中使用样式来实现行为控制-->
11     <fx:Style>
12         @namespace s "library://ns.adobe.com/flex/spark";
13         @namespace mx "library://ns.adobe.com/flex/mx";
14         
15         #myTAEffect{
16             mouseDownEffect:WipeLeft;
17             duration:1000;
18         }
19     </fx:Style>
20     
21     <mx:TextArea id="myTAEffect"/>
22     
23 </s:Application>

重点谈谈利用CSS文件控制样式。首先,新建一个CSS文件,填写CSS样式文件代码。之后,需要将CSS文件引用到MXML文件中,具体如下:

  <fx:Style source="CSS文件路径"/>

CSS文件中,要获得想要控制的对象,可以通过在被控制对象里设置id来进行,如控制TextArea需要设置id

  <mx:TextArea id="myTAEffect"/>

相应地,在CSS文件中通过“#”进行获取,如:

  #myTAEffect{

  mouseDownEffect:WipeLeft;

  duration:1000;

  }

也可以像在Html设置类来进行,即设置styleName属性,如:

  <mx:TextArea styleName="myTAEffect"/>

相应地,在CSS文件中通过“.”进行设置,如:

  .myTAEffect{

  mouseDownEffect:WipeLeft;

  duration:1000;

  }

然后在MXML文件中用到这一样式时,只需在相应标签中添上此styleName即可。

 

                         2016330日于南京草场门

 

参考资料:

  1. 聂晓霞. Flex从入门到精通[M]. 北京:清华大学出版社,2008.
posted @ 2016-07-13 14:45  上山若随  阅读(944)  评论(0编辑  收藏  举报