flex4.5中CSS選擇器的應(yīng)用小結(jié)
更新時(shí)間:2013年04月28日 16:40:03 作者:
與HTML相似,F(xiàn)lex允許在MXML標(biāo)簽中通過(guò)CSS樣式來(lái)設(shè)置組件的外觀。到flex4.5后已經(jīng)基本上支持了HTML中的所有CSS的應(yīng)用方式,這里主要來(lái)列舉下flex4.5中CSS選擇器的使用方法
CSS選擇器可以包括,標(biāo)簽選擇器、類別選擇器、ID選擇器、交集選擇器、并集選擇器、后代選擇器、全局選擇器、偽類等,這些樣式應(yīng)用都已經(jīng)在flex得到支持
1.標(biāo)簽選擇器
標(biāo)簽選擇器是根據(jù)MXML文件中組件的類型來(lái)設(shè)置的,示例如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
s|TextInput{
color: #FF0000;
}
s|Button{
color: #FFFF00;
}
</fx:Style>
<s:TextInput text="text input"/>
<s:Button label="button"/>
上面二個(gè)控件的顏色會(huì)隨之改變。
2.類別選擇器
類別選擇器是以一個(gè)點(diǎn)開(kāi)頭,后面加上組件中通過(guò)styleName設(shè)置的樣式名來(lái)表示的類別選擇器,示例如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
.btn2{
color: #FF0000;
}
</fx:Style>
<s:Button label="button2" styleName="btn2"/>
3.ID選擇器
ID選擇器是以#開(kāi)頭,后面加上組件中設(shè)置的ID名來(lái)表示的類別選擇器,示例如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
#btn1{
color: #FF0000;
}
.btn2{
color: #FF00FF;
}
</fx:Style>
<s:Button id="btn1" label="button1"/>
<s:Button label="button2" styleName="btn2"/>
4.交集選擇器
交集選擇器由兩個(gè)選擇器直接連接構(gòu)成,其結(jié)果是選中二者各自元素范圍的交集,示例如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
s|Button#btn1{
color: #FF0000;
}
s|Button.btn2{
color: #FF00FF;
}
</fx:Style>
<s:Button id="btn1" label="button1"/>
<s:Button label="button2" styleName="btn2"/>
<s:Button label="button3"/>
5.并集選擇器
并集選擇器是多個(gè)選擇器通過(guò)逗號(hào)連接而成的,并集選擇器同時(shí)選中各個(gè)基本選擇器所選擇的范圍,任何形式的選擇器都可以,示例如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
s|Button#btn1,s|Button.btn2{
color: #FF0000;
}
</fx:Style>
<s:Button id="btn1" label="button1"/>
<s:Button label="button2" styleName="btn2"/>
<s:Button label="button3"/>
6.后代選擇器
后代選擇器也叫派生選擇器,可以使用后代選擇器給一個(gè)元素里的子元素定義樣式,示例如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
s|HGroup s|TextInput{
color: #FF0000;
}
</fx:Style>
<s:HGroup verticalAlign="middle">
<s:Label text="Text Input 1"/>
<s:TextInput text="sample"/>
</s:HGroup>
<s:TextInput text="sample"/>
7.全局選擇器
全局選擇器global可以將樣式應(yīng)用到所有的組件,示例如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
global{
color: #FF0000;
}
</fx:Style>
<s:Label text="label"/>
<s:TextInput text="text input"/>
<s:Button label="button"/>
8.偽類
偽類是用來(lái)設(shè)置組件在不同狀態(tài)下的樣式,示例如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
s|Button:up{
color: #FF0000;
}
s|Button:down{
color: #FF00FF;
}
s|Button:over{
color: #0000FF;
}
</fx:Style>
<s:Button label="button"/>
1.標(biāo)簽選擇器
標(biāo)簽選擇器是根據(jù)MXML文件中組件的類型來(lái)設(shè)置的,示例如下:
復(fù)制代碼 代碼如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
s|TextInput{
color: #FF0000;
}
s|Button{
color: #FFFF00;
}
</fx:Style>
<s:TextInput text="text input"/>
<s:Button label="button"/>
上面二個(gè)控件的顏色會(huì)隨之改變。
2.類別選擇器
類別選擇器是以一個(gè)點(diǎn)開(kāi)頭,后面加上組件中通過(guò)styleName設(shè)置的樣式名來(lái)表示的類別選擇器,示例如下:
復(fù)制代碼 代碼如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
.btn2{
color: #FF0000;
}
</fx:Style>
<s:Button label="button2" styleName="btn2"/>
3.ID選擇器
ID選擇器是以#開(kāi)頭,后面加上組件中設(shè)置的ID名來(lái)表示的類別選擇器,示例如下:
復(fù)制代碼 代碼如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
#btn1{
color: #FF0000;
}
.btn2{
color: #FF00FF;
}
</fx:Style>
<s:Button id="btn1" label="button1"/>
<s:Button label="button2" styleName="btn2"/>
4.交集選擇器
交集選擇器由兩個(gè)選擇器直接連接構(gòu)成,其結(jié)果是選中二者各自元素范圍的交集,示例如下:
復(fù)制代碼 代碼如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
s|Button#btn1{
color: #FF0000;
}
s|Button.btn2{
color: #FF00FF;
}
</fx:Style>
<s:Button id="btn1" label="button1"/>
<s:Button label="button2" styleName="btn2"/>
<s:Button label="button3"/>
5.并集選擇器
并集選擇器是多個(gè)選擇器通過(guò)逗號(hào)連接而成的,并集選擇器同時(shí)選中各個(gè)基本選擇器所選擇的范圍,任何形式的選擇器都可以,示例如下:
復(fù)制代碼 代碼如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
s|Button#btn1,s|Button.btn2{
color: #FF0000;
}
</fx:Style>
<s:Button id="btn1" label="button1"/>
<s:Button label="button2" styleName="btn2"/>
<s:Button label="button3"/>
6.后代選擇器
后代選擇器也叫派生選擇器,可以使用后代選擇器給一個(gè)元素里的子元素定義樣式,示例如下:
復(fù)制代碼 代碼如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
s|HGroup s|TextInput{
color: #FF0000;
}
</fx:Style>
<s:HGroup verticalAlign="middle">
<s:Label text="Text Input 1"/>
<s:TextInput text="sample"/>
</s:HGroup>
<s:TextInput text="sample"/>
7.全局選擇器
全局選擇器global可以將樣式應(yīng)用到所有的組件,示例如下:
復(fù)制代碼 代碼如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
global{
color: #FF0000;
}
</fx:Style>
<s:Label text="label"/>
<s:TextInput text="text input"/>
<s:Button label="button"/>
8.偽類
偽類是用來(lái)設(shè)置組件在不同狀態(tài)下的樣式,示例如下:
復(fù)制代碼 代碼如下:
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
s|Button:up{
color: #FF0000;
}
s|Button:down{
color: #FF00FF;
}
s|Button:over{
color: #0000FF;
}
</fx:Style>
<s:Button label="button"/>
相關(guān)文章
Flex中如何動(dòng)態(tài)生成DataGrid以及動(dòng)態(tài)生成表頭
因某些需要,DataGrid及其表頭需要?jiǎng)討B(tài)生成,網(wǎng)上的解決方案打多籠統(tǒng),下面有個(gè)不錯(cuò)的解決方法,感興趣的朋友可以參考下2013-10-10
Flex 錯(cuò)誤(mx.messaging.messages::RemotingMessage)分析
有時(shí)我們?cè)谧鲰?xiàng)目的時(shí)候會(huì)遇到Flex 錯(cuò)誤提示mx.messaging.messages::RemotingMessage,那么產(chǎn)生這個(gè)錯(cuò)誤的原因是什么呢,今天我們來(lái)分析下2014-06-06
Flex中對(duì)表格中某列的值進(jìn)行數(shù)字格式化保留兩位小數(shù)
表格中展示的比率,對(duì)比率的處理是:保留兩位小數(shù),并向上保留。通過(guò)對(duì)某列的值進(jìn)行數(shù)字格式化來(lái)實(shí)現(xiàn)保留兩位小數(shù)2014-10-10
Flex中的HDividedBox和VDividedBox的比較附圖
學(xué)習(xí)Flex的朋友對(duì)HDividedBox和VDividedBox并不陌生吧,下面是兩者的簡(jiǎn)單比較,感興趣的朋友可以參考下2013-10-10
Flex實(shí)現(xiàn)雙軸組合圖的設(shè)計(jì)思路及代碼
組合圖是有柱狀圖和折線圖組合的,柱狀圖顯示的數(shù)據(jù)是依據(jù)左邊的豎直軸,折線圖的數(shù)據(jù)依據(jù)右邊的豎直軸,詳細(xì)實(shí)現(xiàn)請(qǐng)看本文,希望對(duì)大家有所幫助2013-09-09
Flex Label自動(dòng)截取、自動(dòng)換行代碼
Flex Label經(jīng)常會(huì)使用到它的自動(dòng)截取、自動(dòng)換行代碼如下,感興趣的朋友可以參考下哈,希望對(duì)大家有所幫助2013-07-07
Flex中TabNavigator設(shè)置Tabs樣式思路及源碼
這篇文章主要介紹了Flex中TabNavigator如何設(shè)置Tabs樣式有哪些思路,感興趣的朋友可以看看下面的源碼2014-05-05

