更改侧面菜单背景颜色 ionic 4

Change side menu background color ionic 4

尝试在我的 ionic 4 项目中更改侧滑菜单背景的颜色

这是我的代码:

<ion-app>
  <ion-split-pane>
    <ion-menu>
      <ion-header>
        <ion-toolbar color="medium">
          <ion-title>Menu</ion-title>
        </ion-toolbar>
      </ion-header>
      <ion-content background = "medium">
        <ion-list>
          <ion-menu-toggle auto-hide="false" *ngFor="let p of appPages">
            <ion-item [routerDirection]="'root'" [routerLink]="[p.url]">
              <ion-icon slot="start" [name]="p.icon"></ion-icon>
              <ion-label>
                {{p.title}}
              </ion-label>
            </ion-item>
          </ion-menu-toggle>
        </ion-list>
      </ion-content>
    </ion-menu>
    <ion-router-outlet main></ion-router-outlet>
  </ion-split-pane>
</ion-app>

而且它只改变了 ion-toolbar 背景颜色,这是它的样子

要在 ionic 4 中执行此操作,您必须添加到您的页面 css(或 scss)文件

ion-menu{
      ion-content{
          --ion-background-color:#color
      }
}

由于菜单很可能在 app.component.html 上,您可能没有为其生成 css 文件,在这种情况下,您可以通过在 app.component.ts 使用

@Component({
     selector: 'app-root',
     templateUrl //,
     stykeUrls :['yourstyles.scss']
})
如果背景有一些不透明度,

将无法正常工作;离子菜单后面还有另一个白色背景。要在整个侧面菜单上实现不透明度,我必须使用以下代码:

ion-split-pane{ 
    --border: none !important;
    ion-menu{
     --background: rgba(0,0,0,.3) !important; 
        ion-content{            
            --background: transparent !important; 
            ion-list-header{ 
                --background: transparent !important;
                --color: #FFFFFF !important;   
            }
            ion-list {
                background: transparent !important;
            }
            ion-item{
                --background: transparent !important;
                 --color: #FFFFFF !important;
                 ion-icon{ padding-right: 10px !important; }
            }
        }
    }
}