angular - mat-list-item 中的 mat-form-field 重叠
问题描述
我正在实施一个 . firebase 登录的用户界面。为此,我正在使用angular material
.
为了更容易在用户端更正输入,我想为用户实现mat-hint
s 以在用户键入意外内容时显示错误。
<mat-card>
<mat-card-header>
<mat-card-title>Login</mat-card-title>
<mat-card-subtitle>Log into your existing account</mat-card-subtitle>
</mat-card-header>
<mat-card-content>
<mat-list>
<mat-divider></mat-divider>
<h3 mat-subheader>Profile</h3>
<mat-list-item>
<mat-icon mat-list-icon>alternate_email</mat-icon>
<mat-form-field mat-line class="width-100">
<input matInput placeholder="Email" [(ngModel)]="email" [formControl]="emailFormControl"
[errorStateMatcher]="matcher" />
<mat-error *ngIf="emailFormControl.hasError('email') && !emailFormControl.hasError('required')">
Please enter a valid email address
</mat-error>
<mat-error *ngIf="emailFormControl.hasError('required')">
Email is <strong>required</strong>
</mat-error>
</mat-form-field>
</mat-list-item>
<mat-list-item>
<mat-icon mat-list-icon>security</mat-icon>
<mat-form-field mat-line class="width-100">
<input matInput #passwordtest type="password" placeholder="Password" [(ngModel)]="password" />
<mat-hint align="end" *ngIf="passwordtest.value.length < 6">{{passwordtest.value.length}} / 6 or more</mat-hint>
</mat-form-field>
</mat-list-item>
<mat-divider></mat-divider>
</mat-list>
</mat-card-content>
<mat-card-actions>
<button mat-button (click)="login(email, password)">Login</button>
</mat-card-actions>
</mat-card>
然而,似乎mat-form-field
with mat-hint
s 和 placeholders 并非设计用于在 an 内工作mat-list-item
,因为结果看起来像这样。
如果我删除mat-list-item
(和前面的小图标mat-form-field
),那么提示和占位符不会重叠。
如您所见,结果不是很好,因为子标题与表单字段未对齐。此外,我认为第一个选项(重叠)由于小图标而看起来更好。
我想知道在这种情况下我的选择是什么,因为我不想通过添加额外的边距或填充来破坏材料设计。但是,我想这是预期的行为,我做错了什么。
我如何设计这个用户界面,使带有提示和占位符的输入字段不重叠?
解决方案
<mat-list-item style="height:auto" *ngFor="let item of itemList"> ..
height:auto 也为我工作。没有这个,我观察到重叠的文本。如果自动工作,它比固定像素值更好。
推荐阅读
- mysql - 如何避免在 MySQL 的公用表表达式中重复代码?
- reactjs - 在一个子域中出现 React Cors 问题,但在另一个子域中没有
- jquery - 如何使用变量名
- pymongo - 我可以将 MOTOR 用于 mongoengine 吗?
- python - 使用 JSON 列表更新数据库
- r - 如何在图形中制作 2 个箱线图
- amazon-web-services - 在 AWS Athena 中 - 如何以所需格式显示时间戳列?
- svg - 如何在吉他拨片形状的 svg 中使用图像作为背景
- r-lavaan - 比较非嵌套模型之间的标准化因子载荷
- python - 熊猫在最后一个空格后删除数据