CSS層疊順序
當(dāng)使用了多個(gè)樣式表,樣式表需要爭(zhēng)奪特定選擇符的控制權(quán)。在這些情況下,總會(huì)有樣式表的規(guī)則能獲得控制權(quán)。以下的特性將決定互相對(duì)立的樣式表的結(jié)果。
! important
規(guī)則可以用指定的! important 特指為重要的。一個(gè)特指為重要的樣式會(huì)凌駕于與之對(duì)立的其它相同權(quán)重的樣式。同樣地,當(dāng)網(wǎng)頁(yè)制作者和讀者都指定了重要規(guī)則時(shí),網(wǎng)頁(yè)制作者的規(guī)則會(huì)超越讀者的。以下是! important 聲明的例子:
BODY { background: url(bar.gif) white;
background-repeat: repeat-x ! important }
Origin of Rules (Author's vs. Reader's)
正如以前所提及的,網(wǎng)頁(yè)制作者和讀者都有能力去指定樣式表。當(dāng)兩者的規(guī)則發(fā)生沖突,網(wǎng)頁(yè)制作者的規(guī)則會(huì)凌駕于讀者的其它相同權(quán)重的規(guī)則。而網(wǎng)頁(yè)制作者和讀者的樣式表都超越瀏覽器的內(nèi)置樣式表。
網(wǎng)頁(yè)制作者應(yīng)該小心地使用! important 規(guī)則,因?yàn)樗鼈儠?huì)超越用戶任何的! important 規(guī)則。例如,一個(gè)用戶由于視覺關(guān)系,會(huì)要求大字體或指定的顏色,而且這樣的用戶會(huì)有可能聲明確定的樣式規(guī)則為! important,因?yàn)檫@些樣式對(duì)于用戶閱讀網(wǎng)頁(yè)是極為重要的。任何的! important 規(guī)則會(huì)超越一般的規(guī)則,所以建議網(wǎng)頁(yè)制作者使用一般的規(guī)則以確保有特殊樣式需要的用戶能閱讀網(wǎng)頁(yè)。
選擇符規(guī)則: 計(jì)算特性
基于它們的特性級(jí)別,樣式表也可以超越與之沖突的樣式表,一個(gè)較高特性的樣式永遠(yuǎn)都凌駕于一個(gè)較低特性的樣式。這只不過是計(jì)算選擇符的指定個(gè)數(shù)的一個(gè)統(tǒng)計(jì)游戲。
統(tǒng)計(jì)選擇符中的ID屬性個(gè)數(shù)。
統(tǒng)計(jì)選擇符中的CLASS屬性個(gè)數(shù)。
統(tǒng)計(jì)選擇符中的HTML標(biāo)記名格式。
最后,按正確的順序?qū)懗鋈齻€(gè)數(shù)字,不要加空格或逗號(hào),得到一個(gè)三位數(shù)。( 注意,你需要將數(shù)字轉(zhuǎn)換成一個(gè)以三個(gè)數(shù)字結(jié)尾的更大的數(shù)。)相應(yīng)于選擇符的最終數(shù)字列表可以很容易確定較高數(shù)字特性凌駕于較低數(shù)字的。以下是一個(gè)按特性分類的選擇符的列表:
#id1 {xxx} /* a=1 b=0 c=0 --> 特性 = 100 */
UL UL LI.red {xxx} /* a=0 b=1 c=3 --> 特性 = 013 */
LI.red {xxx} /* a=0 b=1 c=1 --> 特性 = 011 */
LI {xxx} /* a=0 b=0 c=1 --> 特性 = 001 */
特性的順序
為了方便使用,當(dāng)兩個(gè)規(guī)則具同樣權(quán)重時(shí),取后面的那個(gè)。
本文地址:http://irelandcustomcontracting.com/tutorial/wd2232.html
- 專訪:石墨文檔產(chǎn)品總監(jiān)羅穎
- UI設(shè)計(jì)不得不知的移動(dòng)端UI尺寸適
- 光音移動(dòng)設(shè)計(jì)規(guī)范 — 表單類
- 體驗(yàn)設(shè)計(jì)中的排序問題
- 網(wǎng)頁(yè)設(shè)計(jì)精粹 網(wǎng)頁(yè)中那些迷人的按
- aliued:響應(yīng)式設(shè)計(jì)的現(xiàn)狀與趨勢(shì)
- 10個(gè)智能對(duì)象處理的ps技巧
- 網(wǎng)頁(yè)UI - 原子設(shè)計(jì)理論(上)
- 如何通過設(shè)計(jì)提升banner點(diǎn)擊率?
- 晉小彥視覺設(shè)計(jì)系列文章(二):全屏