当前位置: 首页 > 知识库问答 >
问题:

造型垫-选择棱角材质

苗信鸥
2023-03-14
<mat-form-field>
  <mat-select placeholder="Search for"
    [(ngModel)]="searchClassVal"
    panelClass="my-select-panel-class"
    (change)="onSearchClassSelect($event)">
    <mat-option *ngFor="let class of searchClasses" [value]="class.value">{{class.name}}</mat-option>
  </mat-select>
</mat-form-field>
.my-select-panel-class {
    width:20px;
    max-width:20px;
    background-color: red;
    font-size: 10px;
}

我使用的是:Angular 4.4.5@Angular/Material:2.0.0-beta.12

共有1个答案

澹台文博
2023-03-14

对于Angular9+,根据这一点,您可以使用:

.mat-select-panel {
    background: red;
    ....
}

演示

1.使用::ng-deep:

::ng-deep .mat-select-content{
    width:2000px;
    background-color: red;
    font-size: 10px;   
}

2.使用视图封装

...组件CSS样式封装到组件的视图中,不会影响应用程序的其余部分。若要控制如何在每个组件的基础上进行封装,可以在组件元数据中设置视图封装模式。从以下模式中选择:....None表示Angular不进行视图封装。Angular将CSS添加到全局样式中。前面讨论的范围规则、隔离和保护不适用。这与将组件的样式粘贴到HTML中基本相同。

None值是您将需要的,以打破封装和设置材质样式从您的组件。因此可以在组件的选择器上设置:

  import {ViewEncapsulation } from '@angular/core';
  ....
  @Component({
        ....
        encapsulation: ViewEncapsulation.None
 })  
.mat-select-content{
    width:2000px;
    background-color: red;
    font-size: 10px;
}

这一次,您还必须使用!importity来“强制”样式。

style.css

 .mat-select-content{
   width:2000px !important;
   background-color: red !important;
   font-size: 10px !important;
 } 

演示

<mat-option style="width:2000px; background-color: red; font-size: 10px;" ...>
 类似资料:
  • 我正在使用angular 8.0.0,angular material和Fuse主题作为管理面板。问题是,每当我更改mat-select的样式时,它就会被应用,但在一两次刷新后,角度材质会覆盖本地组件更改并应用默认的。 它也会应用到所有组件,我如何才能只更改一个mat-select的样式? 我的html中有问题的部分: scss文件: } 尝试了stackoverflow的所有建议,但似乎无法改变

  • 我需要能够从角材料列表中删除选定的项目。为此,我决定从初始项目数组中减去选定项目数组(不确定这是最好的方法)。 我的问题是,我找不到一种方法来将超文本标记语言中的选定项数组传递给TS并使用它。 Angular材料在其留档中有以下示例: 其中x是mat-seltion-list选择器的ID,y是对所选元素执行的操作。但这似乎只适用于超文本标记语言。 下面是我不工作的代码。 HTML,其中我设置了列表

  • 我有一个mat select,其中的选项是数组中定义的所有对象。我试图将该值设置为其中一个选项的默认值,但是当页面呈现时,该值处于选中状态。 我的typescript文件包含: 我的HTML文件包含: 我已尝试将和

  • 我在应用程序中使用Angular Material,并且Mat-select基于循环多次显示,并且一些条件我需要在ngAfterViewInit()中的Mat-select中默认选择数据 循环,它处理多个mat-select 我正在创建多个mat-select代码 TS代码为 如果我在itemid中显示值,则itemid在ngModel中是正确的,但未呈现Mat-select请帮助

  • 我试着用angular-6中的angular材质 我的材料。单元ts是这样的 它正在给出错误 请帮帮我

  • 我想突出显示点击的选定值的背景颜色。我正在演示这个例子,它突出显示了多个选择值。我想在单击以选择一个选项时只突出显示所选的值。