为整个页面设置颜色或字体时html和*之间的差异

问题描述 投票:0回答:1

我看了一段视频,发现程序员使用* {}设置边距和填充,但使用html {}设置字体颜色。我不明白他为什么要麻烦使用html {}设置字体颜色?他本可以使用* {}设置所有这些东西。

css css-selectors
1个回答
0
投票

*通配符规则本质上说此样式适用于所有元素。通常不建议使用它,因为这会影响性能。我怀疑作者对元素具有默认边界或填充的讨厌之处,并因此而使土壤盐溶。

我建议使用真实的CSS重置或规范化代码段,例如https://dev.to/hankchizljaw/a-modern-css-reset-6p3

colormargin / padding在上下文中的区别在于,默认情况下color是从元素的父级继承的,而margin / padding则不是。

因此,如果我们设置* { color: green; },则必须编写另一个规则,例如p { color: inherit; }才能使继承行为恢复。

© www.soinside.com 2019 - 2024. All rights reserved.