[英]Angular Material Theme does not change the mat-dialog accent color
[英]Angular Material - Mat-Dialog - change background blur / darkening effect
我猜你已經錯過了文檔中的屬性MatDialogConfig -backgroundClass 。
檢查這個StackBlitz DEMO一個簡單的例子
從這個演示:
對話框概述-example.ts:
openDialog(): void {
const dialogRef = this.dialog.open(DialogOverviewExampleDialog, {
width: '250px',
data: {name: this.name, animal: this.animal},
backdropClass: 'backdropBackground' // This is the "wanted" line
});
dialogRef.afterClosed().subscribe(result => {
console.log('The dialog was closed');
this.animal = result;
});
}
樣式.css:
.backdropBackground {
/* your css needs */
}
@benshabatnoam 給出的答案是絕對正確的,但文檔還有另一個選項可以完全禁用背景。
下面是一個例子:
您可以通過組合不透明度和模糊來獲得不錯的效果。 這樣做:
將backdropClass
添加到您的對話框選項中:
backdropClass: "bdrop"
並將這些規則添加到您的樣式表中:
.bdrop {
background-color: #bbbbbbf2;
backdrop-filter: blur(4px);
}
演示: https : //angular-blurred-dialog-backdrop-zdyvpc.stackblitz.io/
你也可以在你的styles.scss
覆蓋 class .mat-dialog-container {}
.mat-dialog-container {
box-shadow: 0px 11px 15px -7px rgb(0 0 0 / 20%), 0px 24px 38px 3px rgb(0 0 0 / 14%), 0px 9px 46px 8px rgb(0 0 0 / 12%);
background: #fff;
color: black;
}
const dialogConfig = new MatDialogConfig();**strong text**
dialogConfig.id="dialog"
this.dialog.open(CreatOrderComponent,dialogConfig)
// 你可以給它一個 ID 然后你可以使用這個 id 來設置它的樣式
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.