html5 angular 关系,Angular----样式

本篇根据angular官网提供的例子,对angular涉及到的样式绑定进行说明。

一、提供的css样式

1 .red{

2 color:red;

3 }

4 .green{

5 color: green;

6 }

7 .yellow{

8 color: yellow;

9 }

10 .size{

11 font-size: 20px;

12 }

13 .back{

14 background-color: gray;

15 opacity: 0.4;

16 }

二、绑定样式

(1)、传统的样式绑定-------绑定red  size   back

1 传统的样式绑定

效果图如下:

d4722510fc43c31049733e59d6af49f4.png

(2)、css类绑定----添加或删除单个类的最佳途径

css类绑定的语法和property绑定类似。但是方括号中的部分不是元素的属性名,而是由class前缀,一个点(.)和css类的名字组成,其中后两部分是可选的,例如:[class.class-name]。借助css类绑定,可以从元素的class attribute 上添加和移出css类名。

a、绑定语法1-----用yellow back 替换标准绑定(绑定多个css样式)

首先在组件中定义变量: 1 yellowback = 'yellow back';

然后给标签绑定上述定义的变量: 1 css类绑定替换传统的样式绑定

通过[ class ]绑定的样式将替换class传统绑定的样式,效果图如下:

ebb1eeed87180f0bf0ea7a297eb5df90.png

b、绑定语法2-----绑定单个css样式----绑定到特定的类名。当[ class.类名] = ‘true|false’,当为真的时候,angular会添加这个类,否则会移出这个类

首先在组件中定义变量: 1 isred = true;

然后给标签绑定上述定义的变量: 1 css类绑定red类

效果图如下:

e2adfee20c8fef80147ad689258fb9c3.png

(3)、ngclass----同时添加或移出多个类

a、不简洁的写法(目的是为了加深对 [ngclass] 的理解)

首先在组件中定义几个变量:

1 isred = true;

2 isgreen = true;

3 isyellow = true;

4 isback = true;

5 issize: true;

在模板页中写法如下:

1 第一种写法

效果如下所示:

0e94e386aeb0b3e1dccec1a94c52c2f0.png

1 第一种写法的另类风格

效果如下:

db1dccd033133178e83baa7a8f6329ce.png

b、常规写法----将ngclass绑定到一个键值对对象,键为类名,值为bool类型,如果值为true,则对应的类被加上,否则该类会被移出。

首先在组件中定义变量样式对象:

1 currentclasses = {

2 'yellow': true,

3 'back': false,

4 'size': true

5 };

然后在模板页面对该样式对象进行绑定,根据值得true或者false决定对应样式是否会被添加。一般值会在组件中预先定义好,在修改的时候只需要修改预先定义好的变量即可

1 标准的ngclass

效果图如下所示:

c5ed9f866fbf27693d40abbbd058917e.png

(4)、style binding----设置单一样式值的方法。样式绑定的语法与property属性绑定类似。但是方括号中的部分不是元素的属性名,而由style前缀、一个点(.)和css样式的属性名组成,形如:[ style.style-property]。有些样式绑定中的样式带有单位,这种情况,根据条件以‘em’和‘%’来设置字体大小的单位。

1 red

2 save

3 big

4 small

效果显示如下:

8940b6d1a8aea9c3a01d782b020b8faf.png

注意:[ style.style-property]=“ ‘类名这里加单引号’ ”;style-property样式属性命名方法可以用中线命名法,就像这个例子中一样,也可以使用驼峰式命名法,比如fontsize.

(5)、ngstyle----同时设置多个内联样式

首先在组件中定义变量和样式:

1 isred = true;

2 curentstyle = {

3 'color': this.isred ? 'red' : 'green',

4 'border': '1px solid gray',

5 'fontsize': '20px'

6 };

在模板中将样式通过 [ ngstyle]  绑定

1 ngstyle binding test

效果显示如下:

7df04c888a88b81ba6136d612cb27b6c.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值