Bootstrap模态中的角度材料下拉

时间:2018-04-16 07:22:07

标签: angular less angular-material2 angular-material-5

我有一个Angular 5应用程序,必须在Bootstrap模式中使用Angular Material' s mat-select。问题是下拉选项出现在模态后面。我的代码如下所示:

<mat-form-field class="mdb-form-field form-adjustments">
    <mat-select placeholder="What fruit are you looking for?" [formControl]="fruitType" [(ngModel)]="defaultFruitType">
        <mat-option *ngFor="let fruitType of fruitTypes" [value]="fruitType">{{ fruitType }}
        </mat-option>
    </mat-select>
</mat-form-field>

我知道我应该使用z-index将Angular Material的选择选项带到前面。但问题是什么课?我尝试将它应用于Angular Material的多个类,但无济于事。以下所有都失败了:

body div.cdk-overlay-container {
  z-index: 99999;
}

/deep/ .cdk-overlay-pane {
  z-index: 99999 !important;
}

/deep/ .cdk-global-overlay-wrapper, .cdk-overlay-container {
  z-index: 99999 !important;
}

.mat-select-menu-container {
  z-index: 99999 !important;
}

.mat-dialog-container {
  z-index: 99999;
}

/deep/ .mat-select-panel {
  z-index: 99999 !important;
}

/deep/ .mat-primary {
  z-index: 99999 !important;
}

有没有人知道哪一类Angular材料我必须应用z-index才能将选择选项置于模态的前面?

谢谢!

2 个答案:

答案 0 :(得分:2)

我在Angular Material 6 / Bootstrap 4中遇到了相同的问题。我在styles.scss文件中使用以下样式解决了该问题-

.cdk-global-overlay-wrapper {
     z-index: 1000;
}

答案 1 :(得分:1)

我尝试了许多黑客手段,但只有这个对我有用:

.cdk-overlay-container {
  z-index: 9999 !important;
}