Flex精华摘要 5:使用样式和字体

原创 2006年05月25日 11:51:00

Flex所支持的样式比Flash要丰富,样式定义的方法也很多。这也是FlexFlash要强大、适合网页开发的地方之一。
样式定义类型
1. 外部样式表

<mx:Style source='/css/myStyle.css'/>

 

1.


Flex
会调用全局样式表global.css,该全局样式表由flex-config.xml定义,如:

<global-css-url>/WEB-INF/flex/global.css</global-css-url>

 

1.


系统默认的样式表文件global.css文件其实没有任何样式定义,我们可以手动添加全局样式,也可以更改默认的全局样式文件路径。如,把全局样式文件该为:

<global-css-url>/css/styles.css</global-css-url>

 

1.


在这里顺便提一点,定义外部css文件的时候,颜色样式有四种定义方式:

: .myclass { fillColor: #6666CC } // 16进制颜色格式
2 : .myclass { borderColor: rgb(77%,22%,0%) } // RGB 颜色格式
3 : .myclass { errorColor: rgb(0,255,0) } // 10进制RGB颜色格式
4 : .myclass { color: Blue } // VGA 颜色名称格式

 

1



2.本地样式定义
使用<mx:Style>来定义当前文件的样式
下面的例子定义了myFontStyle子类样式,要使用对应的样式可以在组件中使用styleName属性来应用样式。

<mx:Style>

 

2. .myFontStyle {  fontSize: 15  }

3. </mx:Style>

4. <mx:Button id='myButton' styleName='myFontStyle' label='Click Here' >

1.


下面的样式则定义了所有Button组件的样式,使用该方式定义的样式在使用的时候不需要指定样式名。

<mx:Style>

 

2. Button {  fontSize: 15  }

3. </mx:Style>

4. <mx:Button id='myButton' label='Click Here' >

1.



3. 内嵌样式定义
对个别需要特殊处理的组件,可以使用下面的方式进行内嵌样式定义

<mx:Button id='myButton' fontSize='15' color='0x9966CC' label='My Button'/>

 

1.



4. 使用脚本样式定义
这种方法使用了Flash传统的AS脚本方式来定义样式,具有更强大的灵活性,并且可以使用StyleManager类以及getStyle() setStyle() 方法,如下所示:

 

1. <mx:Script>
 

2. <![CDATA[
 

3. //使用styleManger类
 

4. mx.styles.StyleManager.styles.ToolTip.fontWeight = 'bold';
 

5. //获取组件样式
 

6. lb1.text=ip1.getStyle('fontSize');
 

7. //设置组件样式
 

8. lb1.text=ip1.setStyle('fontSize',newSize);
 

9. ]]>

10.  </mx:Script>

 



如果三种样式定义方式同时使用的话,优先级别从高到低依次为:
内嵌式样式>本地样式定义(脚本样式定义)>外部样式定义

特殊样式定义
在进行样式定义的时候,我们需要注意几种Flex特殊的样式定义
1.
全局样式定义
对所有未被定义的控制组件应用global样式

global { 

 

2. fontSize:22;

3. textDecoration: underline;

4.  }

1.


2.
应用程序样式定义
Application
标记是Flex的根标记,Application样式用来定义未被定义的容器以及子容器的样式

Application { 

 

2. marginLeft: 0px;

3. marginRight: 0px;

4. marginTop: 0px;

5. marginBottom: 0px;

6. horizontalAlign: 'left';

7.  }

1.



关于字体的样式定义
1. 使用设备字体

.myClass { 

 

2. fontFamily: Arial, Helvetica, '_sans';

3. color: Red;

4. fontSize: 22;

5. fontWeight: bold;

6.  }

1.


2. 使用移植字体

 

1. <mx:Style>
 

2. @font-face { 
 

3. src:url('akbar.ttf');
 

4. fontFamily: myfont;
 

5.  }
 

6. @font-face { 
 

7. src:url('akbar.ttf');
 

8. fontWeight: bold;
 

9. fontFamily: myfontBold;

10.   }

11.  </mx:Style>

 


在定义了该字体样式后,就可以通过fontFamily来应用该字体样式,如:

Accordion { 

 

2. fontFamily: myfont

3.  }

1.

 

修改flex验证提示,以及一般提示的字体样式

Flex/AIR控件字体样式设置

今天在写个air的程序,写完后老婆说我字体太小、太难看了,于是我就开始整理程序的界面样式,想着这么简单的工作很快就会完成吧,可是事与愿违,竟然花费了好几个小时的时间才把控件的字体设置完成。最后发现我竟...

Flex 宋体、黑体、楷体、仿宋字体样式

s|Label { font-family: FangSong_GB2312; /*SimSun,SimHei,KaiTi_GB2312,FangSong_GB2312,*/ /*以上四种字体默认...
  • ljz9425
  • ljz9425
  • 2012年04月11日 15:54
  • 4001

修改Flex chart中Legend的字体样式

FLEX的图表(CHART)中的Legend 的字体通过直接设置Style 并没有办法改变字体大小. 通过查资料发现了这个方法: 通过派生LegendItem类,并设置Legend的Item...

Flex更改Alert提示框的字体大小和样式

1、Alert字体大小更改 先创建一个css文件,这里我取名global.css,路径flex_src/css/global.css .AlertTitle {      font...

HTML5.CSS3网页布局和样式精华

  • 2015年04月17日 16:49
  • 45B
  • 下载

[lesson5_1]Flex.3样式和主题(1)part2

  • 2009年01月07日 17:20
  • 12.01MB
  • 下载

Xcode4.2-SDK5 字体样式

=========== 代码查看字体     NSArray *familyNames = [UIFont familyNames];          for(id obj in family...

在Flex中使用嵌入字体鲜为人知的秘密

核心提示:这里不能使用flashType属性,该属性的值由SWF文件决定,无法再更改。在使用该字体之前,必须保证SWF文件已经加载完毕。     在处理文本时,为了美观,有时会给文本选择一些特殊的...
  • sjz168
  • sjz168
  • 2011年09月19日 15:47
  • 1397
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Flex精华摘要 5:使用样式和字体
举报原因:
原因补充:

(最多只允许输入30个字)