markdown 角度样式绑定和NgStyle

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了markdown 角度样式绑定和NgStyle相关的知识,希望对你有一定的参考价值。

# Angular - Style Binding & NgStyle

[SOURCE](https://alligator.io/angular/style-binding-ngstyle-angular/), [SOURCE](https://stackoverflow.com/a/47875089/1602807)

### Single Style Value Binding:

```
<p [style.background-color]="'darkorchid'">
  Quite something!
</p>
```

You can also specify the unit, here for example we set the unit in `em`, but `px`, `%` or `rem` could also be used:

```
<p [style.font-size.em]="'3'">
  A paragraph at 3em!
</p>
```

And here’s how you would conditionally set a style value depending on a property of the component:

```
<p [style.font-size.px]="isImportant ? '30' : '16'">
  Some text that may be important.
</p>
```

### NgStyle for multiple values:

Simple style binding is great for single values, but for applying multiple styles the easiest way is to use NgStyle:

```
<p [ngStyle]="myStyles">
  You say tomato, I say tomato
</p>
```

And then myStyles would be a property in the component that contains an object with css property names as the keys, like this:

```
myStyles = {
'background-color': 'lime',
'font-size': '20px',
'font-weight': 'bold'
}
```

Or it could be provided inline like this:

```
<p [ngStyle]="{'background-color': 'lime',
    'font-size': '20px',
    'font-weight': 'bold'}">
  You say tomato, I say tomato
</p>
```

Or the object can be the return value of a method:

```
<p [ngStyle]="setMyStyles()">
  You say tomato, I say tomato
</p>

setMyStyles() {
  let styles = {
    'background-color': this.user.isExpired ? 'red' : 'transparent',
    'font-weight': this.isImportant ? 'bold' : 'normal'
  };
  return styles;
}
```

### Transform style binding:

```
[ngStyle]="{'transform': 'translateX(' + $value + 'px)'}"
[ngStyle]="{'transform': 'translate(' + $x + 'px, ' + $y + 'px)'}"
or
[style.transform]="'translateX('+$value+')'"
[style.transform]="'scale(' + bannerImageScale + ')'"
```

以上是关于markdown 角度样式绑定和NgStyle的主要内容,如果未能解决你的问题,请参考以下文章

无法使用[ngStyle]渲染从API接收的样式

12动态样式和动态样式类的设置(ngStyle/ngClass)

如何通过传递对象使用 [ngstyle] 将网格行和网格列动态传递到角度 div 选项卡

使用 NgStyle 动态设置 MatHeaderCell 样式?

如何为 [ngStyle] 设置动态 CSS 样式

markdown 聚合物的角度样式指南