如何在CSS中将单选按钮图标样式设置为空(在Flex 3中)?
-
10-07-2019 - |
题
您可以通过在CSS中设置以下值来为Flex中的RadioButton设置外观:
upSkin: Embed(...);
overSkin: Embed(...);
ownSkin: Embed(...);
disabledSkin: Embed(...);
selectedUpSkin: Embed(...);
selectedOverSkin: Embed(...);
selectedDownSkin: Embed(...);
selectedDisabledSkin: Embed(...);
但是,它仍会在您的皮肤内显示小圆圈图标。您可以通过设置以下样式来更改图标:
upIcon: Embed(...);
overIcon: Embed(...);
etc...
我的问题是,如何将这些图标设置为空?而不是1x1像素透明图像或什么?我怎么能给它一个空的风格?
修改强>
在动作中,我可以这样做:
button.setStyle("icon", null);
在CSS中我尝试过:
icon: none;
icon: null;
但都没有奏效。
接受的答案:
建议一个 <!>放大器; 两个两者都有效,但我更喜欢清洁的解决方案:
upIcon: ClassReference(null);
感谢您的回答(希望我能将两者都标记为答案!)
解决方案
试试这个:
ClassReference(null);
其他提示
我认为在Flex CSS中将皮肤设置为null
是不可能的。实际上,某些Flex组件必须为皮肤设置了一些内容,如果使用setStyle("skinName", null)
,它们将抛出运行时错误。当我不想要皮肤时,我通常会使用这样的声明:
RadioButton
{
upIcon: ClassReference("mx.skins.ProgrammaticSkin");
}
ProgrammaticSkin
类不显示任何内容并实现IFlexDisplayObject
(这通常是Flex中皮肤的要求),因此我认为这是您想要空白皮肤的最佳选择。
如果是标准CSS,则可以使用以下内容。我假设样式是类,如果他们的ID替换了。用#:
.upSkin
{
background: none;
}
background
属性可用于设置颜色,定位和重复;如果您需要专门定位背景图片,请使用:
.upSkin
{
background-image: none;
}
不隶属于 StackOverflow