`

Flex个人知识库之样式皮肤

阅读更多
    学习Flex已经有4、5个月了,也算是入了门吧,基本的功能都已掌握,但是对于样式、皮肤却一直没有涉及。今天工作中恰好碰到了一个有关字体的问题,因此索性系统地学习一下样式皮肤方面的知识。
1、 字体
不管是中文版XP还是英文版XP,默认的中文字体都是宋体/新宋体,问题就在于英文字体。宋体是包含英文字体的,中文版XP显示英文的时候用的就是宋体;而英文版Windows XP用的字体是Tahoma(俗称大河马字体)。
     A、几种常用字体的比较:
一是,宋体在windows.ie中没有aa的效果,锯齿看起来很丑,在windwos.office/linux中会好些。
二是,Tahoma和Arial对应中文的应该是黑体而不是宋体,把它们跟宋体放一起排版根本不协调。
三是,Tahoma和Arial都是非等宽字体,而宋体是等宽的,这点也是不对等的。
四是,Arial,该字体最大的特点或者说缺点就是无法区分大写的”i”与小写的”l”。
    B、 使用建议
一、最好不要在显示英文的时候还用宋体(理由的话自己看效果就知道了)
二、font-family 规则中都提供一个通用字体系列。这样就提供了一条后路,在用户代理无法提供与规则匹配的特定字体时,就可以选择一个候选字体,如:
   {font-family: Times, TimesNR, 'New Century Schoolbook',
     Georgia, 'New York', serif;}
根据这个列表,用户代理会按所列的顺序查找这些字体。如果列出的所有字体都不可用,就会简单地选择一种可用的 serif 字体。
    注意: 您也许已经注意到了,上面的例子中使用了单引号。只有当一个字体名中有一个或多个空格(比如 New York),或者如果字体名包括 # 或 $ 之类的符号,才需要在 font-family 声明中加引号。
     C、 疑问:
我在项目中采用的字体是宋体,然而宋体的英文字看上去和别扭,于是想能不能通过CSS对中文与英文分别设置字体?   
    1、网友提供解法,列出一串字体,将宋体放在最后,让系统去加载(个人在datagrid中试验无效)
    2、通过编程的方式,先判断出英文字符然后再对其设置特定的字体(可行但不通用)
    寻求更好的解法... ...


   待续... ...
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics