每天學習一點點!!!
總所周知,CSS某些屬性可以繼承,然后今天看到MDN的時候看到了CSS也可以控制繼承,感覺很有意思,所以記錄一下:
控制繼承有5
個屬性值,分別:initial、inherit、revert、revert-layer、unset
;
作用如下:
- initial:設置元素某可繼承屬性為初始值;
- inherit:設置元素某可繼承屬性與父元素相同;
- revert(英語):重置元素某可繼承屬性為瀏覽器默認樣式;
- revert-layer(英語):重置元素某繼承屬性為在上一個層疊層(@layer)中建立的值;注意:如果當前規則不在 @layer 中,或者不存在上一層 @layer 中,
revert-layer
則等同于revert
; - unset:重置元素某繼承屬性為自然值;
例子
HTML
<div class="test-MDN-index"><h2>test-控制繼承</h2><ul><li class="li-initial">測試控制繼承 <a href="#">a標簽color: initial</a> 屬性值</li><li class="li-inherit">測試控制繼承 <a href="#">a標簽color: inherit</a> 屬性值</li><li class="li-revert">測試控制繼承 <a href="#">a標簽color: revert</a> 屬性值</li><li class="li-revert-layer">測試控制繼承 <a href="#">a標簽color: revert-layer</a> 屬性值</li><li class="li-unset">測試控制繼承 <a href="#">a標簽color: unset</a> 屬性值</li></ul>
</div>
CSS
.test-MDN-index {color: green;
}
ul {color: red;
}
.li-initial a {color: initial;
}
.li-inherit a {color: inherit;
}
.li-revert a {color: revert;
}
.li-revert-layer a {color: revert-layer;
}
.li-unset a {color: unset;
}
@layer test {.li-revert-layer a {color: purple;}
}