Flex警告:组件中不支持 CSS 类型选择器:“spark.components.*”

     当在视图View的mxml文件中通过<fx:style>标签为组件定义CSS样式时,出现了组件中不支持 CSS 类型选择器:“spark.components.*”,也许你会说这不过是一个警告罢了,不用理它,但是结果往往不尽如人意,不处理这个警告,组件就没有办法显示我们自己定义的CSS样式,所以还是把它解决掉比较好..

     这个警告说了不能在组件中支持CSS类型选择器,想一想我们错在了哪里?其实很简单,我们就是在组件View中定义了和View评级的类型的CSS样式,即和View一样在包spark.components.*下的组件的样式,这是CSS所不允许的。要解决这个限制其实也很简单,只要在<fx:style>标签中自定义样式,并自己取一个名称,然后在组件中通过styleName属性设置这个样式即可。需要注意的是样式的自定义名称前要有符号“.”,但在styleName属性中引用这个样式时则不需要这个“.”符号,示例如下:

//ToggleSwitch为设置自定义样式myTSSyle
<s:ToggleSwitch id="ts" slideDuration="1" styleName="myTSStyle"/>

//样式myTSStyle的定义
<fx:Style>
    @namespace s "library://ns.adobe.com/flex/spark";
    //如果命名为s|ToggleSwitch则会报如上错误。 .myTSStyle
    {
        accentColor: #000000;
	color: #FF0011;
	fontSize: 27;
	skinClass:ClassReference("spark.skins.mobile.ToggleSwitchSkin");
	slideDuration: 125;
	textShadowAlpha: .65;
	textShadowColor: #000000;
    }
</fx:Style>
 

你可能感兴趣的:(css,css,Flex,actionscript,组件中不支持,类型选择器,Flex中CSS错误)