首頁  >  文章  >  web前端  >  如何使用 ::ng-deep 在 Angular 中為父元件設定子元件的樣式?

如何使用 ::ng-deep 在 Angular 中為父元件設定子元件的樣式?

DDD
DDD原創
2024-10-30 22:20:03560瀏覽

How can I style child components from the parent in Angular using ::ng-deep?

從父級設計子組件:在Angular 中使用::ng-deep

簡介

簡介在Angular 中4、開發人員可能會面臨需要從父元件更改子元件CSS 屬性的情況。這需要一種方法來穿透影子 DOM 邊界並定位所需的樣式。 ::ng-deep 選擇器為這項挑戰提供了解決方案。

使用 ::ng-deep::ng-deep 是一個允許存取的陰影穿透選擇器從父組件到子組件的樣式。它是目前推薦的已棄用 /deep/ 組合器的替代方案,並且與 >>> 共用相同的別名。透過利用 ::ng-deep,父元件中所應用的樣式可以向下級聯並影響子元件。

<code class="html"><div class="overview tab-pane" id="overview" role="tabpanel" [innerHTML]="project?.getContent('DETAILS')"></div></code>
範例
<code class="css">.overview {
    ::ng-deep {
        p {
            &:last-child {
                margin-bottom: 0;
            }
        }
    }
}</code>

為了說明::ng-deep 的用法,請考慮以下程式碼:

在此範例中,使用:: ng-deep 應用於.overview 類別的樣式將應用於.overview 子元件內的p 元素班級。 &:last-child 偽類別將影響該子元件中的最後一個 p 元素,刪除預設的下邊距。

IE11 支援要注意的是:: IE11 不支援 ng-deep。對於不支援 ::ng-deep 的瀏覽器,可以探索 Angular CLI 專案中的 ViewEncapsulation.None 和 encapsulation: "none" 等替代方法來實現類似的功能。

以上是如何使用 ::ng-deep 在 Angular 中為父元件設定子元件的樣式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn