Я бы порекомендовал вам использовать flexbox .
Я также не уверен, почему вам нужно поместить его внутрь a, но я удалил его, чтобы упростить демонстрацию.
<div class="parent">
<mat-form-field>
<div style="text-align:center;">
<input matInput placeholder="{{ 'LOGIN.USERNAME' | translate }}" name="username" formControlName="username" type="name" />
<mat-error *ngIf="formErrors.username" class="form__error">{{ formErrors.username }} </mat-error>
</div>
</mat-form-field>
</div>
И на вашем CSS,
.parent {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}
Свойства justify-content
и align-items
со значением center
будут центрировать гибкие дочерние элементы вдоль линии и впоперечной оси соответственно, таким образом, размещая их в центре страницы.Свойство flex-direction
со значением column
выравнивает дочерние элементы (поля формы) сверху вниз.