2017-03-28 17 views
4

私は最近、角度コンポーネントによるCSSとDOMのカプセル化を検討しています。角でのCSSのカプセル化

ng-cliを使って簡単なプロジェクトをスキャフォールドし、コンポーネントをロードしました。コンポーネントセレクタが 'app-component'であるとします。これは、このコンポーネントに関連するすべてのdomとcssをそれ自身の中にカプセル化します。これまでのすべての良い。 index.htmlファイルで今私は私の以前の測定値から学んだことのコンポーネントは、外部CSSの中で出血することができませんどちらも内部CSSがブリードアウトしていることである

(これはWebコンポーネントに、より具体的である)

、私はbootstrap CSSのファイルが含まれています。これは、ブートストラップCSSのスタイルがコンポーネントに流出するかどうかを観察するだけです。私は、私のコンポーネントの中でブートストラップCSSを提供するすべてのクラスを使用することができます。

どうしてですか?基本的に外部CSSがコンポーネントに流出しています。私はビューのカプセル化の概念をAngularで理解していますが、これには当てはまりません。

ここでポイントが足りないかもしれません!

EDITは、基本的に私はこれを参照しています:

https://developers.google.com/web/fundamentals/getting-started/primers/shadowdom

これは言う:

スコープCSS:影DOM内で定義されたCSSがそれにスコープされます。スタイルルールは漏れず、ページスタイルはブリードアウトしません。

+0

外部CSS **は「ブリードイン」します。おそらくそれがそうするのを防ぐことができるでしょうか?なぜそれはないと思いましたか? –

+0

コンポーネントテンプレート内にブートストラップスタイルを使用できます。 –

+1

@torazaburoこれを参照してくださいhttps://developers.google.com/web/fundamentals/getting-started/primers/shadowdom – beNerd

答えて

関連する問題