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がそれにスコープされます。スタイルルールは漏れず、ページスタイルはブリードアウトしません。
外部CSS **は「ブリードイン」します。おそらくそれがそうするのを防ぐことができるでしょうか?なぜそれはないと思いましたか? –
コンポーネントテンプレート内にブートストラップスタイルを使用できます。 –
@torazaburoこれを参照してくださいhttps://developers.google.com/web/fundamentals/getting-started/primers/shadowdom – beNerd