選擇器分類:
元素選擇器(html,body,p)踱卵、
通配符選擇器(*)廊驼、
類選擇器、
ID選擇器惋砂、
屬性選擇器(span[class~="builder"])妒挎、
特定屬性選擇器(img[src|="fingure"])、
后代選擇器(1西饵、后代 p a,2酝掩、子元素 p > a,3、相鄰元素 p + a)眷柔、
偽類選擇器(a:visited)期虾、
偽元素選擇器(設置首字母:first-letter、設置第一行:first-line驯嘱、設置之前:before和設置之后:after)
權重
同一元素添加不同樣式镶苞,到底是哪一個樣式會生效呢。很多同學按照經驗來判斷鞠评,當經驗不起作用的時候茂蚓,沒有什么不是!important不能解決的剃幌。
其實聋涨,css是根據特殊性和重要性來決定的。
特殊性計算如下(按所有選擇器累加)
id選擇器--0 1 0 0
類選擇器负乡、屬性選擇器牛郑、偽類選擇器--0 0 1 0
元素選擇器、偽元素選擇器--0 0 0 1
通配符選擇器--0 0 0 0
內聯樣式特殊性--1 0 0 0(<p style="font-size:16px;"></p>)
重要性 !important(超越所有特殊性)
這就是我們認為id優(yōu)先級高于class的原因敬鬓。
繼承
繼承無特殊性淹朋,易被通配符特殊性為0短路繼承
邊框,邊距等無法繼承(原因是繼承邊框钉答,樣式混亂础芍,不符合設計原理)