a) 普通写法
通过样式绑定,可 以设置内联样式。
样式绑定的语法与属性绑定类似。 但方括号中的部分不是元素的属性名,而由style前缀,一个点 (.
)和 CSS 样式的属性名组成。 形如:[style.style-property]
。
<button [style.color]="isSpecial ? 'red': 'green'">Red</button>
<!-- 也可以 backgroundColor -->
<button [style.background-color]="canSave ? 'cyan': 'grey'" >Save</button>
有些样式绑定中的样式带有单位。在这里,以根据条件用 “em” 和 “%” 来设置字体大小的单位。
<button [style.font-size.em]="isSpecial ? 3 : 1" >Big</button>
<button [style.font-size.%]="!isSpecial ? 150 : 50" >Small</button>
b) 使用NgStyle指令
虽然这是设置单一样式的好办法,但我们通常更喜欢使用 NgStyle指令 来同时设置多个内联样式。
currentStyles = {
'font-style': 'italic',
'font-weight': 'bold',
'font-size': '24px'
};
<div [ngStyle]="currentStyles">
This div is initially italic, normal weight, and extra large (24px).
</div>
ngStyle 这种方式相当于在代码里面写 CSS 样式,比较丑陋,而且将来不太好修改,非常不建议这样写(足够简单的情况除外)。