Flex不支持background-position属性的问题
我在为一个HBox标签添加背景图像的时候碰到了问题。
虽然HBox的CSS属性支持中有background-position这个属性,并且支持top、left等位置,但是当我正确设定并编译swf之后,发现背景图像并不像我设置的那样排列,反而没什么变化。google了一下资料,找到了Flex cookbook上的解决办法:
但是,这个办法在我的程序(Flex SDK 3.4)中并不管用,没办法,我还是只能用degrafa来实现了。degrafa是个优秀的矢量绘图引擎,使用它不仅能支持background-position,还能支持background-repeat(关于背景平铺,还可以看 这篇文章 )。
使用方法:
1HBox
2{
3 border-skin: ClassReference("com.degrafa.skins.CSSSkin");
4 background-image: Embed(source="windowroom/bg2.jpg");
5 background-position:top;
6 background-repeat:no-repeat;
7
8}
引入 com.degrafa.skins.CSSSkin
包后,编译的swf文件大小会增加51KB。如果对文件大小很在乎的话,还是去仔细研究一下Flex Cookbook中提供的方法好了。 ;-)
- 文章ID:716
- 原文作者:zrong
- 原文链接:https://blog.zengrong.net/post/background-position-in-flex/
- 版权声明:本作品采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可,非商业转载请注明出处(原文作者,原文链接),商业转载请联系作者获得授权。