我的组件的css文件中包含以下css:
.mat-expansion-panel-body {
padding: 0;
}
Run Code Online (Sandbox Code Playgroud)
而且,因此我希望看到以下dom元素会显示此规则(即使被覆盖):
<div class="mat-expansion-panel-body">...</div>
Run Code Online (Sandbox Code Playgroud)
但是,我看到在开发工具中应用的全部是:
.mat-expansion-panel-body {
padding: 0 24px 16px;
}
Run Code Online (Sandbox Code Playgroud)
我注意到该元素没有其他主机元素具有的_ngcontent-c19类,因此我假设这是视图封装的情况。
但是,在阅读了:: ng-deep和/ deep /的弃用以及其他封装不推荐使用的封装后,从组件的css文件中对该元素进行样式设置的更好解决方案是什么?
有一堆人已经问过这个问题,但是我已经按照每个答案将其导入到我的app.module.ts文件中,甚至将其导入了app.spec.ts文件中。
继承人的HTML文件:
<p>{{ randomWord }}</p>
<input type="text" [(ngModel)]="enteredValue">
<button (click)="onSubmit()" >Submit</button>
<p>{{ answer }}</p>
Run Code Online (Sandbox Code Playgroud)
这是app.module.ts文件:
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
@NgModule({
declarations: [
AppComponent,
TestComponent, …Run Code Online (Sandbox Code Playgroud)