【发布时间】:2018-04-29 00:16:49
【问题描述】:
我在另一个内部有一个组件,我想完全独立于父组件来设置它的样式。当前示例是文本对齐;我在父母中设置了text-align:center,但我不希望它渗透到孩子身上。我尝试了三种不同类型的 ViewEncapsulation(Native、None 和 Emulated),但在所有情况下,样式都被馈送到子级并且文本居中对齐。任何想法如何处理这个?
父组件:
<div class="Home__Banner">
<div class="container">
<div class="mt-5 mb-5">
<app-mh-search-form></app-mh-search-form>
</div>
</div>
父样式:
.Home {
&__Banner {
background: url('/assets/images/homepage/mainImg.jpg') no-repeat center
center fixed;
background-size: cover;
text-align: center;
}
}
子组件:
<div class="MhSearchForm">
<div class="container">
<div class="row">
<div class="MhSearchForm__Nav">
<div class="MhSearchForm__NavLink" (click)="setActiveState('buy')">
BUY
</div>
<div class="MhSearchForm__NavLink" (click)="setActiveState('rent')">
RENT
</div>
</div>
</div>
</div>
</div>
“购买”和“租赁”文本居中对齐,尽管它位于单独的组件中
【问题讨论】:
-
能贴出相关代码吗?看起来 Native 是您希望将子组件包装在其自己的 shadow dom 中的选项,但如果无法查看发生了什么,则很难进行故障排除。
标签: angular