總結起來很簡單:對於乙個元素
1.本身沒有樣式修飾,它會怎麼做呢?search! 所以
第乙個原則:就近原則,找到離自己最近的祖先元素繼承樣式
2.本身有樣式
2.1 內嵌樣式(style)>內聯樣式表》外聯樣式表 這點沒什麼好說的
2.2 當涉及到多個選擇器修飾的時候,有優先順序順序:內嵌樣式》id>class>標籤
舉個栗子吧,就是 先比較id個數,在以此類推,具體看demo
2.3 !important 最無敵 記住這點就可以了!
10/24/
重新看了之前的文章,嗯,我的確是個腦細胞比較簡單 的人哈哈...
不過這也是我的性格所致,把自己所想的清楚表達出來,就很滿足。
今天看了mdn的文件,裡面提及了css優先順序,有點意思的是,我之前面試被提及優先順序一律按照上訴解決,當然我覺得也沒多大礙,如果能說出官方文件的定義,
自然給人感覺牛逼不少,所以還是吸收一下。
一下是原文:
a selector's specificity is calculated as follows:
selectors inside the negation pseudo-class are counted like any other, but the negation itself does not count as a pseudo-class.
concatenating the three numbers a-b-c (in a number system with a large base) gives the specificity.
examples:
* /* a=0 b=0 c=0 -> specificity = 0 */li /* a=0 b=0 c=1 -> specificity = 1 */
ul li /* a=0 b=0 c=2 -> specificity = 2 */
ul ol+li /* a=0 b=0 c=3 -> specificity = 3 */
h1 + *[rel=up] /* a=0 b=1 c=1 -> specificity = 11 */
ul ol li.red /* a=0 b=1 c=3 -> specificity = 13 */
li.red.level /* a=0 b=2 c=1 -> specificity = 21 */
#x34y /* a=1 b=0 c=0 -> specificity = 100 */
#s12:not(foo) /* a=1 b=0 c=1 -> specificity = 101 */
挺好理解的就不多說,有幾個概念還沒想清楚,
pseudo-classes
pseudo-elements
以上這兩個
<p class
="class1 class2 class3"
>something
p>
css**
.class1.class2
.class3
結果顯示:字型顏色為藍色,class會向前覆蓋
CSS樣式之優先順序
說到到css的樣式優先順序,今天偶再來回顧下,從css的樣式優先順序可分為兩個部分 1 從css 放置的位置看權重優先順序 內聯樣式 內部嵌入樣式 外聯樣式 2 從樣式選擇器的權重優先順序 important 內聯樣式 id 類 偽類 屬性選擇器 標籤 偽元素 萬用字元 今兒,我們重點來看看第2點 ...
css樣式優先順序
多重樣式將層疊為乙個 樣式表允許以多種方式規定樣式資訊。樣式可以規定在單個的 html 元素中,在 html 頁的頭元素中,或在乙個外部的 css 檔案中。甚至可以在同乙個 html 文件內部引用多個外部樣式表。層疊次序 當同乙個 html 元素被不止乙個樣式定義時,會使用哪個樣式呢?一般而言,所有...
CSS樣式優先順序
css樣式分為內聯樣式和外部樣式,一般情況下 內聯樣式的優先順序大於外部樣式。即style樣式 id選擇器 class選擇器 元素選擇器。例如 on person num li當對li標籤新增上面兩個樣式時,on樣式中重複的內容是不會生效的。因為.on樣式的優先順序值小於li,它會被li樣式覆蓋。但...