Angular2如何修改父子元件樣式

2021-09-11 10:04:51 字數 1095 閱讀 5726

場景:需要根據實際專案需求,修改引入的第三方元件的部分樣式

修改父元件的元素的樣式

一、修改父元件的元素的樣式

:host

:host偽類,這是在元件內部獲取到其宿主元素的唯一方式,會向上一直查詢到根元素body

具體使用方法:

// 預設當前在乙個元件中,該元件位於乙個父元件中,且該元件引入了第三方子元件

// 以下內容為當前元件引用的css檔案裡的內容

// 第一種方式

// ele : 當前元素

ele:host h1

// 效果: 修改父元件的h1元素字型大小為20px。

// 第二種方式

ele:host(.active) h1

// 效果: 修改父元件類為active元素下的h1元素的字型大小。

複製**

二、 修改子元件的元素的樣式

/deep/>>>

/deep/ 和 >>> 是乙個意思兩種寫法,都是操作子元件的元素的。

具體使用方法:

ele /deep/ h1 

等同於:

ele >>> h1

複製**

三、 依據父元件有無某個類,來修改元件本身的樣式

:host-context

:host-context,和:host類似,都是獲取宿主元素,雖然都是查詢宿主元素,但它們是有區別的, :host修改的還是宿主元素,:host-context修改卻是當前元件,後者是針對父元件是否具備某個類名作出相應的樣式改變響應。

具體使用方法:

ele:host-context(.active) h1 

// 效果: 當宿主元素擁有active類時,才修改當前元件的h1元素的border屬性樣式。

複製**

Angular2 如何搭建

在任意目錄下建立乙個我們的angular2.0 比如d angular myangular2 在d angular myangular2下建立名為 package.json tsconfig.json typings.json systemjs.config.js等四個檔案 檔案內容可到 位址下檢視...

Angular 2 元件之間如何通訊

import from angular2 core component class child component i number 0 constructor 1000 import from angular2 core component class child 1000 component i...

angular2 發布angular2模組,服務

上回說到了如何利用npm包管理器發布自己的包,這次咱們就來個實踐。1 寫好自己的元件 2 利用npm發布自己的元件 3 使用包 基於angular2的架構,一般都需要下列檔案 html檔案,css檔案,component檔案,module檔案。component檔案內容 import區域 impor...