這篇文章給大家分享的是有關css核心基礎知識點有哪些的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
創(chuàng)新互聯(lián)公司主要從事網(wǎng)站設計、成都做網(wǎng)站、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務前進,十多年網(wǎng)站建設經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:028-86922220層疊樣式表
層疊是什么意思?為什么這個詞如此重要,以至于要出現(xiàn)在它的名稱里。
層疊可以簡單地理解為沖突的解決方案。
什么是沖突?
就是同個元素在使用不同的選擇器選擇中后添加相同的樣式。
優(yōu)先級規(guī)則可以表述為
行內(nèi)樣式>ID樣式>類別樣式>標記樣式
在復雜的頁面中,某一個元素有可能會從很多地方獲取樣式,例如一個網(wǎng)站的某一
級標題整體設置為使用綠色,而對某個特殊欄目需要使用藍色,這樣在欄目中就需
要覆蓋通用的樣式設置。在很簡單的頁面中,這樣的特殊需求實現(xiàn)起來不會很難,
但是如果網(wǎng)站的結(jié)構(gòu)很復雜,就完全有可能代碼變得非?;靵y,可能出現(xiàn)無法找到
某個元素的樣式來自于哪條規(guī)則的情況。因此,必須要充分理解css中“層疊”的原理。
計算沖突樣式的優(yōu)先級是一個比較復雜的過程,并不僅僅是上面這個簡單的優(yōu)先級規(guī)則
可以完全描述的。但是讀者可以把一個大的原則,就是“越特殊的樣式,優(yōu)先級越高”。
而這個怎么樣才是特殊且越特殊怎么定位,請接著看以下的內(nèi)容。
特殊性:
每個選擇器都有特殊性,而如果一個元素有兩個或多個沖突的屬性聲明,特殊性高的勝出。
選擇器的特殊性由選擇器本身的組件確定。特殊性值表述為4個部分,如:0,0,0,0.
一個選擇器的具體特殊性如下確定:
對于選擇器中給定的各個ID屬性值,則在第二個部分加一:0,1,0,0。
對于選擇器中給定的各個類屬性值、屬性選擇或偽類,則在第三個部分加一:0,0,1,0。
對于選擇器中給定的各個元素和偽元素,則在第四個部分加一:0,0,0,1。
結(jié)合符和通配選擇器對特殊性沒有任何貢獻。
但通配選擇器特殊性為零 : 即0,0,0,0。
結(jié)合符連零都沒有。
例子:
h2{color:red;} 為0,0,0,1
p em{color:purple} 為0,0,0,2
.grape{color:purple} 為0,0,1,0
p.b e.a{color:red; } 0,0,2,2
#aa{color:red;} 0,1,0,0
div#aa *[href]{color:red;} 0,1,1,1
而第一個0是為行內(nèi)樣式準備的,因為越前面,代表優(yōu)先級越高,假如非零數(shù)字位置一樣,那么先比較前面的數(shù)字的大小,
然后再往下比較,直到數(shù)字不相對,取數(shù)字大那個的優(yōu)先級高。
所以才有上面的那個大致優(yōu)先級規(guī)則:
行內(nèi)樣式>ID樣式>類別樣式>標記樣式
它們剛剛好可以作為每個部分的代表,也是四個,對號入座。
重要聲明 !important ,就是把你所需要的聲明標出來,它的優(yōu)先級高,不過它要放在聲明的值的最后。
繼承:
繼承的特殊性連零都沒有,就是沒有特殊性;
這個0特殊性有零與無特殊性有很大的區(qū)別,就是0特殊性的選擇器可以為后代加樣式,
而繼承雖然也有給后代加樣式,但有限制的,只有有繼承能力的才能加到后代元素中,如color等,而margin、padding和border這些屬性都不會加到后代里。
相同權(quán)重的,按順序比較,順序越下他的優(yōu)先級高。
較高特殊性強于較低特殊性
所以偽類聲明順序:link-visited-hover-active
LVHA(簡寫)
當:visited在他們之后時,由于權(quán)重一樣,所以會看他們的順序,而:visited在他們之后會勝出。
當不是寫統(tǒng)一屬性就不會出現(xiàn)這種問題。所以寫同一種屬性時要注意 !?。?!
感謝各位的閱讀!關于“css核心基礎知識點有哪些”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!