How to center vertically with Angular Flex Layout?

后端 未结 3 559
迷失自我
迷失自我 2020-12-30 02:35

I\'ve created a simple login component and I\'d like to vertically center, but I\'m not sure how to achieve this using the Angular Flex Layout library.

app.component

相关标签:
3条回答
  • 2020-12-30 03:00

    Vertically centering elements with flexbox has no effect if the container element is the same height as its contents. Making the top level <div> in your example take up all the available vertical space with height: 100% (or some other Angular Flex Layout specific solution if available - maybe fxFlexFill) should center its contents right where you want them.

    0 讨论(0)
  • 2020-12-30 03:03

    If the parent element has a known height, all you need is fxLayoutAlign="center center":

    <section class="intro-section">
      <div
       fxLayout="row"
       fxLayout.xs="column" 
       fxFlexFill
       fxLayoutAlign="center center"
      >
        <div fxFlex="50">
          <h1>MAYABI PORTFOLIO MULTIPURPOSE THEME</h1>
          <p>lorem ipsum dolor sit amt, consectet adop adipisicing elit, sed do eiusmod 
    teporara incididunt ugt labore.</p>
        </div>
        <div fxLayout="50">
          hello
       </div>
      </div>
    </section>
    
    .intro-section {
       height: 500px;
    }
    
    0 讨论(0)
  • 2020-12-30 03:15

    You have to specify the height of the fxLayout (Edited)

    <div fxLayout="row" fxLayoutAlign="center center" class="row-height">
        <mat-card fxFlex="30%">
            <mat-card-title>Login</mat-card-title>
    
            <mat-card-content fxLayout="column">
                <mat-form-field>
                    <input matInput placeholder="Username">
                </mat-form-field>
                <mat-form-field>
                    <input matInput placeholder="Password">
                </mat-form-field>
            </mat-card-content>
    
            <button mat-raised-button color="accent">Login</button>
        </mat-card>
    </div>
    

    CSS

    .row-height {
        height: 100%
    }
    
    0 讨论(0)
提交回复
热议问题