Css 预定义样式赢得';不变

Css 预定义样式赢得';不变,css,angular,input,angular2-forms,Css,Angular,Input,Angular2 Forms,这可能是一个愚蠢的问题: 我正在做我的第一个Angular2,第7版(学校项目)SPA,我正在使用材质角度框架。该框架要求我使用其中一个预定义的样式表。我是,但我想更改matInput标签上的填充。由于它生成了很多代码中没有显示的内容,但您可以在inspect视图中看到,我认为css中的选择器可能无法工作 这是我补充的: .mat表单字段包装器, .mat表单字段中缀, .mat表单字段外观{ 填充:0!重要; } 因为在inspect视图中,我一直在玩弄不同生成的元素,我能够精确地指出我需要

这可能是一个愚蠢的问题:

我正在做我的第一个Angular2,第7版(学校项目)SPA,我正在使用材质角度框架。该框架要求我使用其中一个预定义的样式表。我是,但我想更改matInput标签上的填充。由于它生成了很多代码中没有显示的内容,但您可以在inspect视图中看到,我认为css中的选择器可能无法工作

这是我补充的:

.mat表单字段包装器,
.mat表单字段中缀,
.mat表单字段外观{
填充:0!重要;
}
因为在inspect视图中,我一直在玩弄不同生成的元素,我能够精确地指出我需要更改的内容的位置,但我就是不这么做(同样是因为我认为matInput生成了很多我在编写时无法瞄准的代码?)。我基本上需要更改.mat表单字段包装器的填充

有人有办法吗?

试试这个

/deep/.mat-form-field-appearance-legacy {
  padding: 0 !important;
}

我以前见过/deep/但我想知道它的作用是什么?它用于在使用模拟视图封装时设置子组件的样式。更多关于这方面的信息可以在这里找到:@MoutPessemierUse这只是作为最后的手段。它很快就会被弃用。@alt255那么你怎么解决它呢,因为我确实读到过它很快就会被弃用,但它可以在atm上运行。替代方法:你可以在styles.css或main.css中编写代码,而无需深入分析。我的回答解决了你的问题吗@MoutPressmierc您可以尝试将样式添加到全局样式表中吗?您正在使用angular cli吗?