为什么WordPress的默认主题会在这么多地方指定字体?

时间:2016-01-19 作者:Victoria

我注意到字体在样式中的许多不同位置都有指定。css,例如,2616主题。

.小部件。小部件标题。网站标题。条目页脚。网站页脚。网站标题:在…之后。。。。还有很多其他的!他们都是蒙特塞拉特人。如果我想在我的孩子主题中使用不同的东西,所有这些都必须被覆盖。。。

当我编写自己的css时,我通常只指定body标记的字体,它会继承。

尽管如此,Wordpress默认主题在这么多地方指定字体是有充分理由的,因此子主题必须搜索字体。这是什么原因?

2 个回复
最合适的回答,由SO网友:Sterling Hamilton 整理而成

这方面没有一个通用的标准。核心主题设定的先例是重建和创新的附带先例。他们不是故意的。

它们在后端为编辑器定义字体系列,以建立一致的内容感觉。

资料来源:https://github.com/WordPress/twentysixteen/blob/master/css/editor-style.css

在主题的实际主样式中,有37个字体族定义。

他们实现了标准化字体图标,然后开始为边缘大小写内容设置基线字体族。这发生在排版部分的开头。

边缘大小写样式很重要,因为插件和用户修改可能会使内容超出您在其中设置样式的预期范围,从而导致样式不一致。通过在正常范围之外设置默认值,可以确保一致性基线。

由于浏览器的阻碍,存在一些字体系列规范。就像这里:https://github.com/WordPress/twentysixteen/blob/master/style.css#L547

这些特定规则将无法跨浏览器兼容,除非它们过于冗长。

这在许多领域都有实现。

除了以上所有内容之外,核心主题开发人员还必须反对默认的WordPress核心样式。主题有一个关于使用特定类和支持特定类样式的要求,所以它们也需要为这些东西添加样式。

在一天结束的时候,他们在他们认为需要的地方通过它,其中一些可能是无关的,这是完全可以接受的。

SO网友:human

基本上是因为216th使用了两种不同的字体Merriweather 作为一般网站字体和正文文本,以及Montserrat 对于特定部分,如徽标、标题等。。。

Merriweather用于后备常规和正文文本:

 /**
 * 3.0 - Typography
 */

 body,
 button,
 input,
 select,
 textarea {
     color: #1a1a1a;
     font-family: Merriweather, Georgia, serif;
     font-size: 16px;
     font-size: 1rem;
     line-height: 1.75;
 }
蒙特塞拉特特定零件:

.widget .widget-title {
    font-family: Montserrat, "Helvetica Neue", sans-serif;
    font-size: 16px;
    font-size: 1rem;
    letter-spacing: 0.046875em;
    line-height: 1.3125;
    margin: 0 0 1.75em;
    text-transform: uppercase;
}
基本上,您需要在每个要更改字体的特定标记上覆盖字体族规则。