2
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
               xmlns:s="library://ns.adobe.com/flex/spark"     
           >
    <fx:Style>    
        @namespace s "library://ns.adobe.com/flex/spark";
        @namespace mx "library://ns.adobe.com/flex/mx";
        s|VGroup {
            gap: 150;
            left: 30;
        }
    </fx:Style>
    <s:VGroup>
        <s:Label text="text1" />
        <s:Label text="text1" />
    </s:VGroup>
</s:Application>

假设 VGroup 距离左侧 30 像素(这是我使用该样式的证明),但它忽略了给定的间隙。当我将 'gap="150"' 直接输入 VGroup-Element 时,它可以工作。那么为什么在通过 css 时会忽略这一点呢?

谢谢你的任何提示。

铜,马库斯

4

1 回答 1

2

因为gap是 VGroup 类的“属性”,而不是样式。此属性只是VerticalLayout#gap属性的包装。

如果您使用 FlashBuilder,您可以在建议列表中看到两者之间的区别。属性表示为绿色圆圈。样式显示为蓝色的“俄罗斯方块”形状。

编辑 Left也是一个属性,但它仍然被应用。原因是在旧版本的 Flex SDKbaseline中,top, bottom, left, right,horizontalCenter以及verticalCenter作为样式实现的地方。所以你仍然可以使用它们的原因是向后兼容性。

于 2012-01-15T21:17:11.870 回答