Flex 4.6 CSS vgroup "пробел" игнорируется - PullRequest
2 голосов
/ 15 января 2012
<?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, он работает.Так почему же это игнорируется при переходе на css?

спасибо за любую подсказку.

у.е., Маркус

1 Ответ

2 голосов
/ 16 января 2012

Поскольку gap является «свойством» класса VGroup, а не стиля. Это свойство является всего лишь оболочкой для свойства VerticalLayout # gap .

Если вы используете FlashBuilder, вы можете увидеть разницу между ними в списке предложений. Свойство представлено в виде зеленого круга. Стиль отображается в виде синей фигуры «Блок тетриса».

edit Left также является свойством, но оно все же применяется. Причина этого заключается в том, что в более старых выпусках Flex SDK baseline, top, bottom, left, right, horizontalCenter и verticalCenter, где они реализованы в виде стилей. Поэтому причина, по которой вы все еще можете их использовать, - обратная совместимость.

...