CSS權(quán)重

這篇是基于CSS選擇器的桐绒,如果對選擇器不太了解可以先看另一篇CSS選擇器

(一)什么是CSS權(quán)重?

  • 權(quán)重決定了你CSS規(guī)則怎樣被瀏覽器解析直到生效覆致,即你的CSS規(guī)則是怎樣顯示的

(二)權(quán)重之比

權(quán)重順序 :!important > 內(nèi)聯(lián) > ID > 類 = 偽類 = 屬性 > 標簽(元素) = 偽元素 > 通配符

(三)怎么確定權(quán)重?

  • 權(quán)重記憶口訣

  • 從0開始:

  • 一個行內(nèi)樣式 + 1000衙吩;

  • 一個ID + 100所森;

  • 一個屬性 / / 偽類 + 10尖坤;

  • 一個元素 / 偽元素 + 1

  • NOTE:行內(nèi)樣式稳懒,指的是html文檔中定義的style

  • NOTE:包含選擇器的權(quán)重為:包含的選擇器權(quán)重值之和

舉例: 
body #content .data img:hover

#content —— id選擇器加了 100
.data —— class類選擇器加了 10
:hover —— 偽類選擇器加了 10
body 、img —— 元素加了 1 

最終的權(quán)重值是 0122

按權(quán)重值排列

權(quán)重值| 選擇器
----|----|----
0000|通用選擇符 / 子選擇符/繼承的樣式
0001|元素選擇器
0010|屬性選擇器 / 類選擇器 /偽類
0100|ID選擇器
1000|行內(nèi)樣式

按選擇器排列

選擇器 表達式或示例 權(quán)重值
ID選擇器 #aaa 100
類選擇器 .aaa 10
標簽選擇器 h1 1
屬性選擇器 [title] 10
相鄰選擇器 selecter + selecter 拆分為兩個選擇器再計算
兄長選擇器 selecter ~ selecter 拆分為兩個選擇器再計算
親子選擇器 selecter > selecter 拆分為兩個選擇器再計算
后代選擇器 selecter selecter 拆分為兩個選擇器再計算
通配符選擇器 * 0
各種偽類選擇器 :link糖驴, :visited僚祷, :hover佛致, :active贮缕, :target, :root俺榆, :not... 10
各種偽元素 ::first-letter,::first-line,::after,::before,::selection 1

(四)權(quán)重的基本規(guī)則

  • 1感昼、相同的權(quán)重:最后面出現(xiàn)的選擇器為最后規(guī)則
    假如在外部樣式表中,同一個CSS規(guī)則你寫了兩次罐脊,那么出現(xiàn)在前面的選擇器權(quán)重低定嗓,你的樣式會選擇后面的樣式

  • 2、不同的權(quán)重萍桌,權(quán)重值高則生效
    選擇器可能會包含一個或者多個與權(quán)重相關(guān)的計算點宵溅,若經(jīng)過計算得到的權(quán)重值越大,則認為這個選擇器的權(quán)重高

  • 我們可以利用 ID 來增加選擇器權(quán)重

(五)對權(quán)重規(guī)則的總結(jié)

  • 一條樣式規(guī)則的整體權(quán)重值包含四個獨立的部分:[A, B, C, D]
  • A 表示內(nèi)聯(lián)樣式上炎,只有 1 或者 0 兩個值
  • B 表示規(guī)則中 ID 的數(shù)量
  • C 表示規(guī)則中除了 ID恃逻、標簽和偽元素以外的其它選擇器數(shù)量
  • D 表示規(guī)則中標簽偽元素的數(shù)量
    比較時從高位到低位(從 A 到 D)分別比較,高位相同才需要比較低位
  • !important注意點:
  • 如果多條規(guī)則中都對同一個屬性指定了 !important,這時候 !important的作用相互抵銷寇损,依然按照ABCD四組計算比較
  • !important的作用只有在具有唯一性時才能提現(xiàn)凸郑,但是我們永遠無法預(yù)料自己什么時候又需要覆蓋一個已經(jīng)指定了!important的屬性,所以最好的辦法就是不要使用

(六)CSS 優(yōu)先級法則

  • A )選擇器都有一個權(quán)值矛市,權(quán)值越大越優(yōu)先
  • B )當權(quán)值相等時芙沥,后出現(xiàn)的樣式表要優(yōu)于先出現(xiàn)的樣式表設(shè)置
  • C )繼承(inherit)的CSS 樣式優(yōu)先級低于指定的CSS 樣式
  • D )在同一組屬性設(shè)置中標有“!important”規(guī)則的優(yōu)先級最大

參考文章:
CSS權(quán)重
CSS選擇器權(quán)重值的計算

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市浊吏,隨后出現(xiàn)的幾起案子而昨,更是在濱河造成了極大的恐慌,老刑警劉巖卿捎,帶你破解...
    沈念sama閱讀 217,907評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件配紫,死亡現(xiàn)場離奇詭異,居然都是意外死亡午阵,警方通過查閱死者的電腦和手機躺孝,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,987評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來底桂,“玉大人植袍,你說我怎么就攤上這事∽雅常” “怎么了于个?”我有些...
    開封第一講書人閱讀 164,298評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長暮顺。 經(jīng)常有香客問我厅篓,道長,這世上最難降的妖魔是什么捶码? 我笑而不...
    開封第一講書人閱讀 58,586評論 1 293
  • 正文 為了忘掉前任羽氮,我火速辦了婚禮,結(jié)果婚禮上惫恼,老公的妹妹穿的比我還像新娘档押。我一直安慰自己,他們只是感情好祈纯,可當我...
    茶點故事閱讀 67,633評論 6 392
  • 文/花漫 我一把揭開白布令宿。 她就那樣靜靜地躺著,像睡著了一般腕窥。 火紅的嫁衣襯著肌膚如雪粒没。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,488評論 1 302
  • 那天簇爆,我揣著相機與錄音癞松,去河邊找鬼倾贰。 笑死,一個胖子當著我的面吹牛拦惋,可吹牛的內(nèi)容都是我干的匆浙。 我是一名探鬼主播,決...
    沈念sama閱讀 40,275評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼厕妖,長吁一口氣:“原來是場噩夢啊……” “哼首尼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起言秸,我...
    開封第一講書人閱讀 39,176評論 0 276
  • 序言:老撾萬榮一對情侶失蹤软能,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后举畸,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體查排,經(jīng)...
    沈念sama閱讀 45,619評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,819評論 3 336
  • 正文 我和宋清朗相戀三年抄沮,在試婚紗的時候發(fā)現(xiàn)自己被綠了跋核。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,932評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡叛买,死狀恐怖砂代,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情率挣,我是刑警寧澤刻伊,帶...
    沈念sama閱讀 35,655評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站椒功,受9級特大地震影響捶箱,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜动漾,卻給世界環(huán)境...
    茶點故事閱讀 41,265評論 3 329
  • 文/蒙蒙 一丁屎、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧谦炬,春花似錦悦屏、人聲如沸节沦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,871評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽甫贯。三九已至吼鳞,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間叫搁,已是汗流浹背赔桌。 一陣腳步聲響...
    開封第一講書人閱讀 32,994評論 1 269
  • 我被黑心中介騙來泰國打工供炎, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人疾党。 一個月前我還...
    沈念sama閱讀 48,095評論 3 370
  • 正文 我出身青樓音诫,卻偏偏與公主長得像,于是被迫代替她去往敵國和親雪位。 傳聞我的和親對象是個殘疾皇子竭钝,可洞房花燭夜當晚...
    茶點故事閱讀 44,884評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽?zāi)J的外補...
    _Yfling閱讀 13,753評論 1 92
  • 1雹洗、css的語法規(guī)則 由css選擇器(selector),以及一條或多條聲明組成香罐,用冒號分開 舉例:selecto...
    瘋狂的蝸牛Dianna閱讀 1,311評論 0 0
  • 本文主要是起筆記的作用,內(nèi)容來自慕課網(wǎng). 認識CSS樣式 CSS全稱為“層疊樣式表 (Cascading Styl...
    0o凍僵的企鵝o0閱讀 2,641評論 0 30
  • 場景 為什么我在這里設(shè)置的css樣式不起作用时肿?可能你在某處定義了一個更高權(quán)重的規(guī)則庇茫,導(dǎo)致此處規(guī)則不生效。 什么是權(quán)...
    seafruit閱讀 265評論 1 1
  • 權(quán)重等級 4 個等級的定義如下:第一等:代表內(nèi)聯(lián)樣式螃成,如: style=""旦签,權(quán)值為1000。第二等:代表ID選擇...
    onestark閱讀 5,519評論 0 1