В Adobe Flex 3 у меня есть HBox, содержащие изображения и этикетки:Flex 3: Top выравнивание изображение и метки
<mx:HBox width="240" verticalAlign="top" horizontalGap="8">
<mx:Image width="46" source="@Embed(source='/assets/blah.swf')"/>
<mx:Label text="Blah."/>
</mx:HBox>
Моя цель состоит в том, чтобы выровнять верхний край изображения и верхний край Ярлык (верхние символы капитала в ярлыке, то есть). Однако независимо от того, с какими свойствами и стилями я сталкиваюсь, постоянное «заполнение» (в кавычках, потому что paddingTop равно нулю) около 6 пикселей остается над меткой, устанавливая верхний край ниже изображения. Кто-нибудь знает, почему?
Спасибо, Саймон
редактировать:
paddingTop не делает трюк. Я вижу такое же поведение на этом:
<mx:HBox width="240" verticalAlign="top" paddingTop="0">
<mx:Canvas width="46" height="46" backgroundColor="red" paddingTop="0"/>
<mx:Label text="Blah." paddingTop="0"/>
</mx:HBox>
Я также проверил, что нет никаких глобальных стилей вмешательства каких-либо из этих классов.
редактировать 2:
Из исходного кода mx.core.UITextField (Flex 3.2.0), который используется внутри Label, LL. 159:
/* The width and height of the TextField are 4 pixels greater than the textWidth and textHeight. */
, а также
public function get measuredHeight():Number { (...) return textHeight + TEXT_HEIGHT_PADDING; (...) }
Тогда я поставил paddingTop моего лейбла до -4, и вуаля, проблема решена! На самом деле это не чистое решение, но ...