你用Angular吗?

一.介绍

如何只改动最简单的css代码,呈现完全不一样的视图效果。

第一种:最基本的设置:

图1 代码

图2 界面运行效果图

平常,想给一个label或者p等标签添加样式,我们就是这样操作,在Angular中也是一样的。

现在,如果我想要将字体换成红色呢,首先想到的就是去修改.label里的color属性值,可如果样式表是封装的或者外部引用的,不方便修改呢?

这时候就要用到ElementRef 和Renderer2了。可以去Angular 官网里搜索哟。

renderer.class 图

我们可以这样用:

label.html

label.ts

当然ElementRef和renderer2都引用自@angular/core库里面的。 至于ViewChild 和ngAfterViewInit()可以自行去了解。

修改效果图

当然,你说这样修改的弊端有没有呢?肯定是有的,因为,this.el.nativeElement获取的是当前元素,如果用*ngFor生成了一系列的label的话,它只会给你修改第一个label的。那有没有其他的办法可以修改呢。当然也是有的!

我们可以获取到元素的节点进行操作?

label.ts

获取元素节点,还是用上面的elementref。 如果要改变所有的,For循环皆可以啦。

可是,这样做又有问题了?如果想不同的label不同字体颜色怎么办呢?

当然Angular也提供了方法呀? ngStyle和ngClass可以用呀!

ngStyle

[ngStyle]="{color:'  '}"  和[style.color]是一样的意思。

你的label想变成什么颜色,你就给我传那个值进来,0就是green......

这种适用于只需要修改少量属性的标签。

如果你需要修改颜色,字体大小,间距....这种方式显然太繁琐,这时候ngclass就来了。

ngclass

注意ngClass后面的字样。label为什么没有用单引号呢,而后面的text-primary却有呢?

1.label是一个变量,我们的样式是可以传参的。

也就是你的html标签不需要改动,需要什么样式就在ts离传入即可。ngClass也可以利用这个特性去修改。

其实这几种用的地方也挺多的,不过得根据实际需求去采用不同形式。

欢迎来找我交流Angular 或前端技术哟。

angular 控件css_Angular 4 设置组件样式的几种方式相关推荐

  1. JS设置CSS样式的几种方式(js设置!important)

    JS设置CSS样式的几种方式(js设置!important) x619y 用JS来动态设置CSS样式,常见的有以下几种 1. 直接设置style的属性  某些情况用这个设置 !important值无效 ...

  2. JS设置CSS样式的几种方式

    JS设置CSS样式的几种方式 1.直接设置style的属性 某些情况下用这个设置!import值无效 如果属性有"-"号,就需要使用驼峰命名法(如textAlign),如果想保留& ...

  3. html js 设置样式,原生js设置样式 笔记:JS设置CSS样式的几种方式

    document(id名).style.backgroundColor = "ren" css里的属性有-的就去掉将首字母大写. js如何添加CSS样式中的class添加属性 用J ...

  4. 用JS来动态设置CSS样式的八种方式

    转自:微点阅读  https://www.weidianyuedu.com 用JS来动态设置CSS样式,常见的有以下几种 1. 直接设置style的属性  某些情况用这个设置 !important值无 ...

  5. angular 控件css_Angular父组件内修改子组件的样式

    在使用NG-ZORRO组件的过程中,需要根据产品的需要,在某些页面修改某些NZ组件的样式.但是由于angular默认采用了Emulated的视图封装模式,导致即便我们想在父组件中直接去重写子组件的样式 ...

  6. flex html 控件 开源,flexlib开源组件库

    ComponentList FlexLib组件列表. FlexLib组件列表 本wiki页面包含了在当前构建的flexlib中所有组件的列表.添加新组件FlexLib之后,你应该编辑这个页面,填写组件 ...

  7. WPF RadioButton按钮控件取消选中设置

    WPF RadioButton按钮控件取消选中设置 通常我们使用的RadioButton控件选中之后就不能进行取消选中的操作,我上网查找到了解决方法,如下: 首先我们在View视图这里写这个按钮的点击 ...

  8. c# chart控件的坐标设置Minimum和Maximum固定值之后,切换成自动模式的程序

    c# chart控件的坐标设置Minimum和Maximum固定值之后,切换成自动模式的程序 c# chart控件的坐标通过chart1.ChartAreas["ChartArea1&quo ...

  9. WPF中通过控件Margin属性设置控件位置

    WPF中通过控件Margin属性设置控件位置 一.Margin属性简介 二.Margin在cs文件中定义 三.Margin设置控件位置 四.参考文档 一.Margin属性简介 在使用WPF进行页面设计 ...

最新文章

  1. Swift语言与Objective-C语言混合编程
  2. 查看用户账户过期信息
  3. [TODO]Python拾遗(二)
  4. MyEclipse下Struts2配置使用和Ajax、JSON的配合
  5. Java中字符串连接符(+)和append的区别
  6. 13.表格标签及其应用实例
  7. CCNP-第二篇-SLA扩展+EIGRP高级版(上)
  8. php变量原格式输出,PHP格式化输出打印变量
  9. oracle 不能导入sql语句,oracle数据库导入.dmp脚本的sql 语句
  10. 资源放送丨《PostgreSQL中的锁》PPT视频
  11. 新格尔软件测试大师,新格尔神雕软件
  12. float取整数部分_python的除法问题 取整取余/向上向下取整/四舍五入
  13. A/D转换器主要性能参数
  14. android fsck,android fsck_msdos分析(一)
  15. 用数据全方位解读《欢乐颂2》
  16. java生成pdf文件并打印
  17. 怎么从视频中提取音频,这四个方法简单实用!
  18. 计算机无法更新正在撤销更改,win10更新出现“无法完成更新正在撤销更改请不要关闭计算”怎么办...
  19. 怎样把经纬度坐标转换为空间直角坐标
  20. 中国石油大学(华东)校园网络认证脚本

热门文章

  1. IIS 7.5 配置伪静态方法
  2. 20190318-使用类做一个简单的图书馆管理系统
  3. Cocoa之NSWindow常用总结
  4. tensorflow基础-placeholder
  5. codewars-random(2)
  6. 高通平台耳机插拔检测
  7. linux中 probe函数的何时调用的?
  8. processing文本可视化_推荐7个数据可视化工具,让你的信息快速生成可视化
  9. ext.net TreePanel单击取值
  10. linux下管理交换分区