Angular Material how to override .mat-form-field-hide-placeholder behavior with css
使用Angular Material,我很难在CSS中覆盖.mat-form-field-hide-placeholder类,当输入失去焦点时,该类会自动添加到父mat-form-field标记中。 目的是始终显示占位符。
代码看起来像这样:
1 2 3 4 5 6 | <mat-form-field> <mat-label> Field label </mat-label> <input type="text" placeholder="placeholder text"> </mat-form-field> |
最终,我做到了:
使用SASS:
1 2 3 4 5 6 7 8 | .mat-form-field.mat-form-field-hide-placeholder { .mat-form-field-infix { .mat-input-element::placeholder { color: $gray-350 !important; -webkit-text-fill-color: $gray-350 !important; } } } |
或纯CSS:
1 2 3 4 | .mat-form-field.mat-form-field-hide-placeholder .mat-form-field-infix .mat-input-element::placeholder { color: $gray-350 !important; -webkit-text-fill-color: $gray-350 !important; } |
您可以使用/ deep /选择器正确覆盖该类。 这是角材中的已知问题。
1 2 3 | /deep/ .mat-form-field-hide-placeholder { // your code here } |
重要的是要知道/ deep /选择器当前已被弃用,但据我所知,目前没有任何替代方法可以解决此问题。 因此,请注意未来的变化。