Ответ 1
Центрировать в контейнере:
CSS:
.container{
position: fixed;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
width:100%;
}
Для стиля matInput
(privately mdInput
) попробуйте один из них:
- Использовать :: ng-deep:
Используйте комбинатор /deep/shadow-piercing descendant combinator, чтобы стилизовать стиль через дочернее дерево компонентов во всех дочерних компонентах. /Deep/combinator работает с любой глубиной вложенных компонентов, и применяется как к дочерним элементам представления, так и к дочерним элементам контента компонента. Используйте /deep/, >>> и :: ng-deep только с эмулированным инкапсуляцией представления. Эмуляция - это стандартная и наиболее часто используемая инкапсуляция. Для получения дополнительной информации см. Раздел инкапсуляции представления управления. Тени-пронизывающий комбинатор-потомок устарел, и поддержка удаляется из основных браузеров и инструментов. Таким образом, мы планируем отказаться от поддержки в Angular (для всех 3 of/deep/, >>> и :: ng-deep). До тех пор :: ng-deep следует предпочесть для более широкой совместимости с инструментами.
CSS:
::ng-deep .mat-input-wrapper{
width:400px !important;
}
2. Используйте ViewEncapsulation
... стили CSS компонента инкапсулируются в представление компонентов и не влияют на остальную часть приложения. Чтобы контролировать, как это инкапсуляция происходит на основе каждого компонента, вы можете установить режим инкапсуляции вида в метаданных компонента. Выберите один из следующих режимов:.... None означает, что Angular не делает инкапсуляцию зрения. Угловая добавляет CSS к глобальным стилям. Правила обзора, выделения и защиты, обсуждавшиеся ранее, не применяются. Это по существу то же самое, что вставка стилей компонентов в HTML.
Typscript:
import {ViewEncapsulation } from '@angular/core';
....
@Component({
....
encapsulation: ViewEncapsulation.None
})
CSS:
.mat-input-wrapper{
width:400px !important;
}
3. Установите стили в style.css
На этот раз вам нужно "форсировать" стили с !important
.
style.css
.mat-input-wrapper{
width:400px !important;
}
4. Используйте встроенный стиль
<mat-form-field style="width:400px !important" ...>
...
</mat-form-field>