(Flex) - Adob​​e AIR - 带有em的字体大小?百分比?

时间:2017-06-28 11:57:47

标签: css actionscript-3 flex air

我正在尝试使用CSS根据屏幕大小调整我的Adobe AIR应用字体。似乎em不是有效的CSS值,也是%

font-size:8%;   // Not a valid value
font-size:8em;  // Not a valid value

我可以使用哪些CSS值来​​设置动态font-size(使用AIR 24)?

请注意,我想要使用@media CSS查询。

1 个答案:

答案 0 :(得分:3)

在Flash / AIR中,CSS的解析略有不同,只有数字可用:

  

fontSize - 仅使用值的数字部分。单位(px,pt)未解析;像素和点是等价的。

请参阅:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/text/StyleSheet

Flash / AIR也有不同的CSS媒体查询。如果你最终走这条路线,你可能想要使用类似application-dpi

的东西
@media (application-dpi: 160) { 
    .someStyle {
        font-size: 12px;
    }

@media (application-dpi: 240) { 
    .someStyle {
        font-size: 14px;
    }

请参阅:http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf62883-7ff2.html#WS19f279b149e7481c4a89460c12d804a111e-8000

您可能还可以尝试通过代码修改样式:

var tf:TextFormat = new TextFormat(); 
if(someScreenSizeVariable < 640) {
    tf.size = 10;
} else {
    tf.size = 13;
}
StyleManager.setStyle("textFormat", tf);

请参阅:http://help.adobe.com/en_US/ActionScript/3.0_UsingComponentsAS3/WS5b3ccc516d4fbf351e63e3d118a9c65b32-7f5b.html#WS5b3ccc516d4fbf351e63e3d118a9c65b32-7f3b