当前位置: 首页 > 知识库问答 >
问题:

如何在Angular 2中使用css/style标记中的组件变量?

方璞
2023-03-14

如何在Angular 2中使用样式标签中的组件变量?

我有一个角2组件为我的头,我喜欢颜色取决于用户的设置。因此,我想分配一个背景和字体颜色。虽然我知道如何将属性绑定到元素,但我不知道如何在样式标记中使用。

对样式使用属性绑定效果很好,但是这会对几个子元素造成很大影响,特别是当它们嵌套在其他子组件中时。[ngStyle]=属性也只对单个元素起作用。

<header id="header" [style.background-color]="changeBackground()">
  <div>
    Some Text
    <a href="asdf">Some Link</a>
    <subcomponent></subcomponent>
  </div>
  <div> ... a lot mor stuff </div>
</header>

因此,我想补充一些内容

<style>
#header, #header a {
  color: {{mycolor}};
}
</style>

到html模板。然而,这并不起作用

类似的问题还没有回答这个问题,只展示属性绑定作为一个解决方案

  • Angular2动态更改CSS属性
  • 动态更新角度2
  • 中的css
  • https://scotch.io/tutorials/all-the-ways-to-add-css-to-angular-2-components
  • https://coryrylan.com/blog/Introduction-to-angular-2-ngclass-and-ngstyle

共有1个答案

巫马嘉祯
2023-03-14

在我看来,你只是在创建一个叫做“子组件”的新组件,为什么不这样做呢?

Subcomponent.ts:

import { Component } from '@angular/core';

@Component({
  selector: 'subcomponent',
  templateUrl: './subcomponent.html',
})
export class SubComponent {
  mycolor = 'blue';
}

subcomponent.html:

<style>
#header, #header a {
  color: {{mycolor}};
}
</style>
 类似资料:
  • 问题内容: 我听说我们可以在CSS中声明/定义变量,并将其像全局变量一样使用: 所以有人知道如何使用它们吗? 问题答案: 为此,您需要使用CSS动态语言的 Less 或 Sass。

  • 我在下面定义了一个全局js变量(@Url是ASP.Net MVC html帮助程序,它将转换为字符串值): 如何访问angular2组件中的rootVar?我曾经在Angular1.5中使用窗口服务,在angular2中有类似的方法吗? 具体来说,我想使用该rootVar变量来帮助在该组件中生成templateUrl:

  • 我正在做一个关于Udemy的html和css课程。创建者首先说style标记必须放在head标记中,但在其中一个程序中,他将style标记放在body标记中,结果起作用了。谁能给我解释一下吗?

  • 我正在做一个关于Udemy的html和css课程。创建者首先说style标记必须放在head标记中,但在其中一个程序中,他将style标记放在body标记中,结果起作用了。谁能给我解释一下吗?

  • 本文向大家介绍如何在Vue.JS中使用图标组件,包括了如何在Vue.JS中使用图标组件的使用技巧和注意事项,需要的朋友参考一下 原文链接:https://gist.github.com/Justineo/fb2ebe773009df80e80d625132350e30 本文对原文进行一次翻译,并从React开发者的角度简单地做了一些解读。 此文不包含字体图标和SVG sprite。仅在此讨论允许用

  • 我可以在Struts2中的s:property标记中使用s:text标记吗。问题是,我的操作类中有一个 映射以的形式具有键/值,实际上映射中存在的值是文件中存在的键。请参阅下面的 这是我的application.properties文件 现在,我想在我的jsp中迭代这个映射,并希望通过在application.properties文件中将映射的值作为键传递,从属性文件中获得这些值,并将它们显示为标