代码之家  ›  专栏  ›  技术社区  ›  jenson-button-event

角度组件模板全局动态字体

  •  2
  • jenson-button-event  · 技术社区  · 7 年前

    我正在尝试允许用户更改字体,这样可以动态更新组件。

    当组件呈现相当多的材质组件时,有许多“roboto”样式。

    如果我将此添加到global styles.css

    * {
        font-family: Lato !important;
      }
    

    它确实成功地覆盖了所有其他字体样式。

    但如何让它充满活力呢? 我在模板中尝试了一个内联脚本标记,但是这个标记被角度去掉了(除了这个例子之外,这是有意义的)。

    我将尝试动态样式表 link 标记,但这意味着为每个字体创建一个样式表,一个右pita。(我们有14种字体)。

    1 回复  |  直到 7 年前
        1
  •  2
  •   user184994    7 年前

    您可以为每个字体创建一个类,并使用 [ngClass]

    例如,创建 serif 班级,就像这样:

    .serif * {
        font-family: serif !important;
    }
    

    然后把它应用到你的 AppComponent 具有 ngClass :

    <div [ngClass]="fontClass">
    

    何处 fontClass 是TS文件中设置的变量。