Flex layout used in mat-drawer-content

2019-08-30 06:23发布

I have used angular flex layout in navigation drawer like this

<mat-drawer-container>
    <mat-drawer #drawer mode="over" >
      <p>Drawer content</p>
      <p>
        <button mat-icon-button (click)="drawer.close()">
          <mat-icon>clear</mat-icon>
        </button>
      </p>
      </mat-drawer>
    <mat-drawer-content fxLayout="row" fxLayoutAlign="start center">

      <p>
        <button mat-icon-button (click)="drawer.open()">
          <mat-icon>menu</mat-icon>
        </button>
      </p>

   <router-outlet></router-outlet>
    </mat-drawer-content>
  </mat-drawer-container>

but it looks like enter image description here

how to stretch mat-drawer-container upto footer?

3条回答
等我变得足够好
2楼-- · 2019-08-30 06:53
.menu-container {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
  }

<mat-sidenav-container class="menu-container">

This worked for me

查看更多
我只想做你的唯一
3楼-- · 2019-08-30 06:56

Your issue comes from the fact that your items aren't stretched.

Start by giving your html and body tags a full height :

html, body {
  height: 100%;
}

Next, you have to make a main container, where you will put your header, container, and footer. This main container will be stretched and flexed.

<div class="container" fxLayout="column">
  <header fxFlex="10%"/>
  <drawer fxFlex/>
  <footer fxFlex="10%"/>
</div>

In this setup, your header and footer will take 10% of the page each, and the drawer will take the remaining space.

查看更多
Bombasti
4楼-- · 2019-08-30 07:16

You can use 'fullscreen' to stretch it to footer.

<mat-drawer-container fullscreen>
   <mat-drawer #drawer mode="over" >
    <p>Drawer content</p>
    <p>
      <button mat-icon-button>
       <mat-icon>clear</mat-icon>
      </button>
    </p>
  </mat-drawer>
<mat-drawer-content fxLayout="row" fxLayoutAlign="start center">

  <p>
    <button mat-icon-button>
     <mat-icon>menu</mat-icon>
   </button>
 </p>

  <router-outlet></router-outlet>
 </mat-drawer-content>
</mat-drawer-container>
查看更多
登录 后发表回答