摘要:如果兩個權重不同的選擇器作用在同一元素上,權重值高的規則生效選擇器可能會包含一個或者多個與權重相關的計算點,若經過權重值計算得到的權重值越大,則認為這個選擇器的權重高。
前言
css權重很多人都聽過,也了解一些,但是很多人對具體的規則或者說再深如一些關于css權重的問題,可能會不那么清楚。日常開發中,或多或少都會遇到css規則不生效的問題,為了讓我們能夠減少調試css規則的時間,深刻理解css權重,就十分關鍵了。如果喜歡的話可以點波贊/關注,支持一下,希望大家看完本文可以有所收獲。
個人博客了解一下:obkoro1.com權重規則總結:
!important 優先級最高,但也會被權重高的important所覆蓋
行內樣式總會覆蓋外部樣式表的任何樣式(除了!important)
多帶帶使用一個選擇器的時候,不能跨等級使css規則生效
如果兩個權重不同的選擇器作用在同一元素上,權重值高的css規則生效
如果兩個相同權重的選擇器作用在同一元素上:以后面出現的選擇器為最后規則.
權重相同時,與元素距離近的選擇器生效
css權重優先級用來干嘛?在同一個元素使用不同的方式,聲明了相同的一條或多條css規則,瀏覽器會通過權重來判斷哪一種方式的聲明,與這個元素最為相關,從而在該元素上應用這個聲明方式聲明的所有css規則。
權重的五個等級及其權重!important;
行內樣式;
ID選擇器, 權重:100;
class,屬性選擇器和偽類選擇器,權重:10;
屬性選擇器指的是:根據元素的屬性及屬性值來選擇元素,比如button的type屬性等。 偽類選擇器: :active :focus等選項.
標簽選擇器和偽元素選擇器,權重:1;
偽元素選擇器: :before :after等級關系:
!important>行內樣式>ID選擇器 > 類選擇器 | 屬性選擇器 | 偽類選擇器 > 元素選擇器權重規則: 1.不推薦使用!important
不推薦使用!important,因為!important根本沒有結構與上下文可言,并且很多時候權重的問題,就是因為不知道在哪里定義了一個!important而導致的。
覆蓋important:雖然我們應該盡量避免使用!important,但你應該知道如何覆蓋important,加點權重就可以實現,codepen的demo
//!important 優先級最高,但也會被權重高的important所覆蓋 #a{ background: blue !important; /* id的important覆蓋class的important*/ } .a{ background: red !important; }2.行內樣式總會覆蓋外部樣式表的任何樣式,會被!important覆蓋 3.多帶帶使用一個選擇器的時候,不能跨等級使css規則生效
無論多少個class組成的選擇器,都沒有一個ID選擇器權重高。類似的,無論多少個元素組成的選擇器,都沒有一個class選擇器權重高、無論多少個ID組成的選擇器,都沒有行內樣式權重高。
codepen的demo;
在demo中使用了11個class組成一個選擇器,最后還是一個ID選擇器,設置的樣式生效。可以想象在玄幻小說的那種等級制度,沒有突破那個等級,就沒有可比性。
所以權重是在雙方處于同一等級的情況下,才開始對比。
4.如果兩個權重不同的選擇器作用在同一元素上,權重值高的css規則生效選擇器可能會包含一個或者多個與權重相關的計算點,若經過權重值計算得到的權重值越大,則認為這個選擇器的權重高。舉一個簡單的栗子:
.test #test{ } // id 100+class 10=110; .test #test span{} // id 100+class 10+span 1=111; .test #test .sonClass{} // id 100+class 10+class 10=120; //生效5.如果兩個相同權重的選擇器作用在同一元素上:以后面出現的選擇器為最后規則.
demo
6.權重相同時,與元素距離近的選擇器生效#test span{ color:blue; } #app span{ // 生效 因為后面出現 color: red; }啦啦啦
比如不同的style表,head頭部等,來看下面的栗子:
#content h1 { // css樣式表中 padding: 5px; }建議:
避免使用!important;
利用id增加選擇器權重;
減少選擇器的個數(避免層層嵌套);
結語以上就是本文關于css權重的內容了,如有不對的地方歡迎指正!希望大家看完可以有所收獲,喜歡的話,趕緊點波訂閱關注/喜歡。
個人blog and 掘金個人主頁,如需轉載,請放上原文鏈接并署名。碼字不易,感謝支持!本人寫文章本著交流記錄的心態,寫的不好之處,不撕逼,但是歡迎指點。
如果喜歡本文的話,可以關注一下我的訂閱號,漫漫技術路,期待未來共同學習成長。
以上2018.5.19
參考資料:你應該知道的一些事情——CSS權重
深入CSS優先級
css優先級
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/113335.html
摘要:可以參見以下相關閱讀創造更多數據上一小節說到了有了更多數據,深度學習算法通常會變的更好。 導語我經常被問到諸如如何從深度學習模型中得到更好的效果的問題,類似的問題還有:我如何提升準確度如果我的神經網絡模型性能不佳,我能夠做什么?對于這些問題,我經常這樣回答,我并不知道確切的答案,但是我有很多思路,接著我會列出了我所能想到的所有或許能夠給性能帶來提升的思路。為避免一次次羅列出這樣一個簡單的列表...
摘要:前端面試每日題,以面試題來驅動學習,每天進步一點讓努力成為一種習慣,讓奮斗成為一種享受相信堅持的力量項目地址推薦歡迎跟一起折騰前端,系統整理前端知識,目前正在折騰,打算打通算法與數據結構的任督二脈。 《論語》,曾子曰:吾日三省吾身(我每天多次反省自己)。 前端面試每日3+1題,以面試題來驅動學習,每天進步一點! 讓努力成為一種習慣,讓奮斗成為一種享受!相信 堅持 的力量?。?! 項目...
摘要:前端面試每日題,以面試題來驅動學習,每天進步一點讓努力成為一種習慣,讓奮斗成為一種享受相信堅持的力量項目地址推薦歡迎跟一起折騰前端,系統整理前端知識,目前正在折騰,打算打通算法與數據結構的任督二脈。 《論語》,曾子曰:吾日三省吾身(我每天多次反省自己)。 前端面試每日3+1題,以面試題來驅動學習,每天進步一點! 讓努力成為一種習慣,讓奮斗成為一種享受!相信 堅持 的力量?。?! 項目...
摘要:內聯樣式標簽魚頭注根據張鑫旭老師在有趣個選擇器可以干掉個選擇器分享過個級聯選擇器可以擊敗個選擇器目前已無此現象。 作者:陳大魚頭 github: KRISACHAN 在上一篇的HTML的標簽與語意中簡單的介紹了HTML標簽跟其一些屬性,向各位堅持看到這里的親表示真誠的感謝。本篇主要會分享一些跟CSS選擇器(CSS Selectors)相關的內容,有興趣的請繼續往下看。 CSS選擇...
摘要:在與李世石比賽期間,谷歌天才工程師在漢城校區做了一次關于智能計算機系統的大規模深度學習的演講。而這些任務完成后,谷歌已經開始進行下一項挑戰了。谷歌深度神經網絡小歷史谷歌大腦計劃于年啟動,聚焦于真正推動神經網絡科學能達到的較先進的技術。 在AlphaGo與李世石比賽期間,谷歌天才工程師Jeff Dean在Google Campus漢城校區做了一次關于智能計算機系統的大規模深度學習(Large-...
閱讀 3210·2021-11-17 09:33
閱讀 3295·2021-11-15 11:37
閱讀 2957·2021-10-19 11:47
閱讀 3207·2019-08-29 15:32
閱讀 1010·2019-08-29 15:27
閱讀 1534·2019-08-29 13:15
閱讀 938·2019-08-29 12:47
閱讀 2032·2019-08-29 11:30