Angular 15中appearance="standard"属性失效问题求助
Angular 15中mat-form-field appearance="standard"失效的原因
属性大小写错误:你代码里写的是
Appearance="Standard",但Angular Material的appearance属性要求使用全小写的属性名和值,即appearance="standard"。虽然HTML属性本身大小写不敏感,但Angular对组件输入属性的绑定是大小写敏感的,错误的大小写会导致框架无法识别你指定的外观样式,从而 fallback 到默认值。Angular Material 15的样式变更:在Angular 15版本中,
mat-form-field的默认外观从standard改为了fill,同时standard外观已被标记为弃用。当你的属性设置不被识别时,组件会使用默认的fill样式,而fill样式的输入框背景正是浅灰色,这和你预期的白色背景(原standard样式)不符。
另外你代码中的input标签重复写了matInput指令,属于冗余代码,建议移除其中一个。修正后的代码如下:
<mat-form-field class="form-field" appearance="standard"> <input matInput formControlName="email" placeholder="email" name="email" type="text" required> </mat-form-field>
需要注意的是,由于standard外观在Angular 15中已被弃用,未来版本可能会被移除,建议考虑使用outline或fill外观来替代。
内容的提问来源于stack exchange,提问作者Hamdi
相关产品推荐
相关产品推荐

