如何使用Flex 4新的CSS语法,兼容halo组件

简介: 兼容halo组件,在css里把原来的Button.Ready改为 #btn_ready即可 前台   文章来源:http://www.colorhook.com/blog/?p=497 如何使用Flex 4新的CSS语法 2009年12月8日 ColorHook 发表评论 阅读评论 写在前面 今天在Adobe Develop Connection上有一篇关于如何使用Flex 4新的CSS语法的文章,顺便把它翻译过来。
+关注继续查看

兼容halo组件,在css里把原来的Button.Ready改为 #btn_ready即可

前台<mx:Button id="btn_ready">

 

文章来源:http://www.colorhook.com/blog/?p=497

如何使用Flex 4新的CSS语法

写在前面

今天在Adobe Develop Connection上有一篇关于如何使用Flex 4新的CSS语法的文章,顺便把它翻译过来。这是原文地址http://cookbooks.adobe.com/index.cfm?event=showdetails&postId=15726#ionComHeading

议题

CSS现在提供了高级选择,命名空间等许多特征,让我们看看如何使用它。

解决方案

我们在这里展示几个应用样式的方式:跟随命名空间的全局选择,ID选择,派生选择和状态选择。

详细介绍
我的应用

这个例子中,我使用了2个Button(1个是Halo主题,1个是spark主题)和1个在VGroup中的ProgressBar:

<?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"xmlns:mx="library://ns.adobe.com/flex/halo" minWidth="1024"minHeight="768">        <fx:Style source="global.css" />        <s:layout>                <s:VerticalLayout />        </s:layout>        <mx:Button label="Click me, I'm a Halo button!"id="haloButton" />        <s:Button label="Click me, I'm a spark cool and funkybutton !" id="sparkButton" />        <s:VGroup id="myBox">                <mx:ProgressBar />        </s:VGroup></s:Application>
命名空间声明
@namespace s "library://ns.adobe.com/flex/spark";@namespace mx "library://ns.adobe.com/flex/halo";

在这种情况下,如果我要为1个组件应用样式,我必须在选择子前面声明命名空间(例如,s|Button{style…})。如果你确定你的项目中基本上都是使用Spark组件,可以把Spark命名空间做为默认命名空间:

@namespace "library://ns.adobe.com/flex/spark";

这样,对于前一个例子,你就不需要额外声明”s|”

全局选择
mx|Button{   color:#ffffff;}s|Button {   color:#000000;}

当然,也可以为组件声明一个stylename属性然后使用类选择器,语法如下:

.myStyleClass {   color:#ff0000;}
ID选择

我只想特定的组件改变基础色,于是我用ID的方式来选择:

#haloButton {   base-color:#0000ff;}#sparkButton{   base-color:#ffffff;}
派生选择

我想要VGroup中的ProgressBar的文字显示红色

s|VGroup#myBox mx|ProgressBar{   color:#ff0000;}
状态选择

我想要我的Spark Buttons的label在用户点击的时候(这是当前状态时”down”)显示绿色。

s|Button:down{   color:#33CC33;}
结论

假如在开发Flex之前,你有HTML/CSS的经验,那就知道以前的CSS功能十分有限。而现在新的语法会让组件换肤更加容易。

相关文章
|
1月前
|
前端开发
CSS渐进增强写法语法
CSS渐进增强写法语法
|
1月前
|
前端开发 开发者
将近20年,CSS终于在所有现代浏览器实现了原生嵌套语法!!!-3
使用&进行精确控制和灵活性 假设您想要选择.demo元素,并使用:not()选择器。这时就需要使用&:
38 0
|
1月前
|
前端开发
将近20年,CSS终于在所有现代浏览器实现了原生嵌套语法!!!
选择任何三角形和正方形 这个任务需要选择多个嵌套元素,也称为组选择器。 不使用嵌套,现在的CSS有两种方式:
31 0
|
1月前
|
Web App开发 前端开发 数据可视化
将近20年,CSS终于在所有现代浏览器实现了原生嵌套语法!!!
引言 将近20年,CSS终于在所有现代浏览器实现了原生嵌套语法,是时候淘汰less/sass等预处理器了
55 0
|
4月前
|
前端开发
前端学习笔记202304学习笔记第六天-对象语法绑定css样式
前端学习笔记202304学习笔记第六天-对象语法绑定css样式
29 0
|
4月前
|
前端开发
一文解读:CSS语法、注释、使用方式、选择器。
一文解读:CSS语法、注释、使用方式、选择器。
|
7月前
|
XML 前端开发 数据格式
重学前端 10 # CSS语法关于带@的规则
重学前端 10 # CSS语法关于带@的规则
44 0
重学前端 10 # CSS语法关于带@的规则
|
7月前
|
前端开发 网络协议 JavaScript
【JavaWeb】Html与Css语法简介(下)
【JavaWeb】Html与Css语法简介(下)
|
7月前
|
Web App开发 移动开发 前端开发
【JavaWeb】Html与Css语法简介(上)
【JavaWeb】Html与Css语法简介(上)
【JavaWeb】Html与Css语法简介(上)
|
11月前
|
前端开发 容器
【前端三件套-CSS】Emmet语法,选择器的分类,三大属性
【前端三件套-CSS】Emmet语法,选择器的分类,三大属性
59 0
【前端三件套-CSS】Emmet语法,选择器的分类,三大属性