【发布时间】:2019-10-11 15:44:22
【问题描述】:
我想在一行中有 2 个表单输入字段: 1.第一个有固定搭配, 1.第二个应该会增长和缩小,但这不会缩小到180px以下。
这是一个完整的stack-blitz example
可能还有其他问题:
我认为第二个输入字段应该已经显示提示文本和水平线 - 但它只会在获得焦点时显示它。
这是预期的行为还是我错过了什么?
无论如何。主要问题是 第二个字段没有像预期的那样缩小。 180px以下不会缩小:
在 chrome 开发工具中,我可以看到 input 元素被 div class="mat-form-field-infix"> 包裹,而 mat-form-field-infix 类的固定宽度为 180 像素!
我想出的唯一解决方法是使用 ::ng-deep 覆盖此宽度。
您可以在 Stackblitz 示例的 co-input-field.component.scss 文件中激活它
:host ::ng-deep .mat-form-field-infix {
// width: auto !important;
width: unset !important;
}
但::ng-deep is deprecated 将被删除。
那么什么是正确的方法让输入按预期缩小?
【问题讨论】:
标签: angular-flex-layout angular-material-7