属性绑定中的样式绑定
在 模板之数据绑定 的属性绑定中,我们没有提及样式绑定,因为样式绑定的内容较多,而且在工作中也很常用,所以在此进行单独整理。
通过 class 实现样式绑定
绑定单个 class
绑定单个 class,只需要使用前缀 class 后跟 className 即可。
例子:
// html
<p [class.textStyle]="styleShow">Everything is fine</p>
// css
.textStyle{
font-size: 30px;
color: brown;
}
// ts
styleShow = true;
*styleShow 为 true 时添加 class,反之删除 class。
绑定多个 class
绑定多个 class 时,会使用正常的属性绑定 [class] 后跟变量或表达式的形式。
变量或表达式可以取以下值:
1、字符串
例子:
// html
<p [class]="styleList">Everything is fine</p>
// css
.textStyle{
font-size: 30px;
color: brown;
}
.textBg{
background-color: cadetblue;
}
// ts
styleList = 'textStyle textBg';
2、数组
例子:
// html
<p [class]="styleList">Everything is fine</p>
// css
.textStyle{
font-size: 30px;
color: brown;
}
.textBg{
background-color: cadetblue;
}
// ts
styleList = ['textStyle','textBg'];
3、className 并以布尔值判断是否添加的对象
例子:
// html
<p [class]="styleList">Everything is fine</p>
// css
.textStyle{
font-size: 30px;
color: brown;
}
.textBg{
background-color: cadetblue;
}
// ts
styleList = {textStyle:true, textBg:false};
通过 style 实现样式绑定
绑定单个 style
绑定单个 style,只需要使用前缀 style 后跟样式名即可。
例子:
// html
<p [style.font-size]="textStyle">Everything is fine</p>
// ts
size = '30px';
绑定多个 style
同样的,绑定多个 style 时,也会使用正常的属性绑定 [style] 后跟变量或表达式的形式。
变量或表达式可以取以下值:
1、字符串
例子:
// html
<p [style]="textStyle">Everything is fine</p>
// ts
textStyle = 'font-size:30px; color: brown';
2、对象
例子:
// html
<p [style]="textStyle">Everything is fine</p>
// ts
textStyle = {'font-size':'30px', 'color': 'brown'};
end