web-dev-qa-db-fra.com

Comment centrer le mat-card dans les matériaux angular?

J'ai une carte de connexion que j'ai conçue en utilisant angular, chaque fois que je l'exécute sur la page, le contenu reste à gauche de la page.

J'ai essayé d'utiliser flex et d'utiliser layout-align="center center" mais je n'arrive toujours pas à placer la carte au centre de la page

Qu'est-ce que je fais mal ?

Voici mon html:

<mat-card class="example-card" layout="row" layout-align="center center">
  <mat-card-header>
    <div class="login-box-header" layout="row" layout-align="center center">
        <img src="https://image.ibb.co/hDqa3p/codershood.png">
    </div>
  </mat-card-header>
  <mat-card-content>
    <form class="example-form">
      <table class="example-full-width" cellspacing="0">
        <tr>
          <td>
            <mat-form-field class="example-full-width">
            <input matInput placeholder="Username" [(ngModel)]="username" name="username" required>
            </mat-form-field>
          </td>
        </tr>
        <tr>
        <td><mat-form-field class="example-full-width">
          <input matInput placeholder="Password" [(ngModel)]="password"type="password" name="password" required>
        </mat-form-field></td>
      </tr></table>
    </form>
    <mat-spinner [style.display]="showSpinner ? 'block' : 'none'"></mat-spinner>
  </mat-card-content>
  <mat-card-actions>
    <button mat-raised-button (click)="login()" color="primary">Login</button>
  </mat-card-actions>
</mat-card>

et voici le contenu toujours pas centré:

enter image description here

5
Chief Madog

Veuillez essayer les méthodes css ci-dessous.

  1. première voie.

    .example-card {display: inline-block; }

Créez ensuite un div de couverture pour "mat-card". Donnez un nom de classe pour la couverture div comme "mat-card-cvr".

.mat-card-cvr{
   width: 100%;
   text-align:center;
}

2. deuxième voie.

.example-card{
    margin: 0 auto;
    width: 40%;
}
  1. Troisième voie.

    .example-card {margin: 0 auto; largeur: 40%; affichage: bloc en ligne; alignement vertical: milieu; }

Créez ensuite un div de couverture pour "mat-card". Donnez un nom de classe pour la couverture div comme "mat-card-cvr".

 .mat-card-cvr{
       width: 100%;
       height: 500px;
       line-height: 500px;
       text-align: center;
    }
  1. Quatrième façon.

    .mat-card-cvr {top: 50%; largeur: 100%; alignement du texte: centre; position: fixe; }

    .example-card {margin: 0 auto; affichage: bloc en ligne; }

1
stalinrajindian