css - CSS星号是一个好习惯吗

标签 css global-variables

我正在重新设计 Angular 应用程序的样式,并且有一个 CSS 规则:

 * {
   font-family: Roboto, Arial, Helvetica, sans-serif;
   }

我知道这基本上是将该字体应用于 DOM 中的每个元素。我很好奇这是否是一个好的做法,即使这是我们将使用的唯一字体。我打算将字体移动到一个全局 SASS 变量中,想知道我是否需要为字体操心。

最佳答案

由于样式的级联特性,使用 body { font-family: Roboto, Arial, Helvetica, sans-serif 就足够了; },以便每个子元素都继承字体系列。这不会在选择器中创建定义的新实例。

如果您使用通用选择器 * { font-family: Roboto, Arial, Helvetica, sans-serif; } 它为每个元素创建一个新的选择器。

在使用通用选择器时,尝试浏览器中的差异并使用检查器检查每个元素。

您绝对应该选择继承。通用选择器会不必要地“污染”您的元素。

通用选择器的一个常见用例是为每个元素和伪元素分配一个替代框模型:

*,
*::before,
*::after {
  box-sizing: border-box; // 1
}

关于css - CSS星号是一个好习惯吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53839401/

相关文章:

Javascript:绕过使用全局变量

javascript - 在 Vuejs 中创建全局变量

javascript - 如何将图像对齐到 Div 的中心

html - 不同属性的 CSS3 不同自定义缓动

javascript - CSS 内容规则忽略 html 元素属性中的换行符 (0x0a)

Python 全局文本区域

python - 每次调用函数时,子模块内的全局变量都会重新加载吗?

css - 在 CSS 中以等间距居中多个输入元素

html - Bootstrap 导航栏,左右有 2 个品牌,链接居中

c - 处理大量变量