Иерархия моего проекта выглядит следующим образом:
Component_HomePage
|
|---> Component_Tool1
| |
| ---> Component_Inner_01
|
|---> Component_Tool2
|
---> Component_Inner_02
Очевидно, что все компоненты имеют разные стили.
Хотя в Component_Inner_01
& Component_Inner_02
есть некоторые классы CSS, чьи имена такие же, но содержимое другое.
Например:
Component_Inner_01.CSS, имеющий list-group-item
класс
.list-group-item{
padding: 0px;
}
И у Component_Inner_02.CSS также есть list-group-item
, но содержимое отличается.
.list-group-item{
padding: 10px;
}
Итак, впервые, когда я просматриваю Component_Inner_01
, список-группа-элемент принимает заполнение как 0px, что идеально.
Но когда я просматриваю страницу Component_Inner_01
после просмотра страницы Component_Inner_02
, класс-элемент списка-списка Component_Inner_01 принимает заполнение как 10px.
Я понял, что проблема была в Component_Inner_02
Декоратор Component_Inner_02, имеющий метаданные encapsulation
, для которого установлено ViewEncapsulation.None
Но я не знаю, что заставляет CSS-классы конфликтовать друг с другом при наличии encapsulation: ViewEncapsulation.None
, кто-нибудь может объяснить?