Angular Material 当控件状态被禁用时,在顶部输入移动占位符

Angular Material Input move placeholder on top when controls state is disabled

对于angular material,当我们在输入控件中输入值时,占位符成为标签。

我将表单用于查看和编辑模式。在查看模式下,我只是禁用表单,因此用户无法编辑它(基于用户角色,API 也会处理它)

但是,看着带有占位符文本的控件看起来很奇怪。是否有任何 CSS 技巧,以便我可以使占位符值成为该控件的标签并将输入显示为空白字段(因此看起来该控件没有可用的值,占位符实际上变成了标签顶部)

请指教

好的,我的问题好像还不够清楚

我找到了解决方案,而且非常简单。

我使用了 mat-form-field 的 "floatLabel" 属性,并在禁用表单的情况下动态生成 属性。

如果表单被禁用,占位符将成为标签,即使输入没有可用的值。

<mat-form-field appearance="fill" floatLabel="never">
  <mat-label>Input</mat-label>
  <input matInput>
</mat-form-field>