在css中,可以使用unset屬性去掉color值,只需要給元素設(shè)置“元素{color:unset}”即可。如果CSS關(guān)鍵字unset從其父級繼承,則將該屬性重新設(shè)置為繼承的值,如果沒有繼承父級樣式,則將該屬性重新設(shè)置為初始值。
本教程操作環(huán)境:windows7系統(tǒng)、CSS3&&HTML5版、Dell G3電腦。
有以下場景:
你用了別人的UI框架,然后你發(fā)現(xiàn),你給css動態(tài)賦的值,被UI框架的優(yōu)先級更高的css覆蓋了。你可以寫js來改變它,但是如果有很多層循環(huán)+操作,你需要寫一大段的js,此時js并不是最優(yōu)的選擇,你真正需要的是 'unset'屬性
unset優(yōu)先級
給某個關(guān)鍵字設(shè)置了unset,例如 color: unset; 它首選會選擇繼承父級的屬性,然后才去選擇繼承本身屬性值, 即: inherit > initial
例如:
本身屬性值p和span設(shè)置了color值,如果設(shè)置了unset,就會去選擇繼承h_bg的color值。
HTML:
<header class="h_bg"> <p class="reset">title title title</p> <span class='reset'>text text text</span> </header>
CSS:
p{ color:red; } span{ color:blue; } .h_bg{ color:#FFF; background:#DEDEDE; padding:20px; text-align:center; width:200px; height:200px; } .reset{ color:unset; //去掉這個屬性,文字會優(yōu)先使用span和P的color值 }
推薦學(xué)習(xí):css視頻教程