2017-03-28 19 views
0

alert(ブートストラップから)[コンポーネントでもある]のスタイルを、コンポーネントの1つに表示されるときに少し違うものにしようとしています。他の場所では、私はデフォルトのスタイルを使用したいと思います。別のコンポーネント内で子コンポーネントのスタイルを変更する

は、私が使用して私が望むものを達成することができる午前:私の親コンポーネントで

encapsulation: ViewEncapsulation.None。しかし、私は本当にそれを避け、ベストプラクティスを使ってそれをすることを学びたいと思っています。

これを修正せずにどのように達成できるのか、誰にも分かりますか?encapsulations

投稿記事の中には、:host::content CSSプロパティを使用すると記載されているものもありますが、これまで使用できませんでした。

私はこれが非常に一般的なシナリオであると信じており、それを行う良い方法があるはずです。

答えて

1

あなたはNoneViewEncapsulationを設定せずにセレクタクロスコンポーネントの境界を作るために

:host /deep/ some-grand-child { 
    color: blue; 
} 

のように親に/deep/を使用することができます。

+0

うわー - うまくいく!ありがとう。私は人々が '/ deep /'に言及しているのを見ましたが、それはCSSセレクタではうまくいかないと考えました。明らかにシャドウDOMを深く勉強する必要があります。 – Hassan

+0

これはAngular2 +のみで、 'ViewEncapsulation.Emulated'でのみ動作します。シャドーDOMではChromeに追加されましたが非推奨です(Angularはセレクタを書き換えます) –

関連する問題