角度更改材料输入大小
我刚接触角度4,开始使用材质组件,我从官方文档复制了几个示例,但没有得到与文档相同的结果:
如何更改文本框宽度? 我尝试style="width:200px;"style="width:100%";class="colmd-x" 但是它们都不起作用,第二件事是如何将登录容器放在页面中间?我在这里找到了一些答案,但似乎没有一个有效,以下是我的代码:
<div class="container">
<div class="row">
<div class="col-md-6 offset-md-3">
<md-card>
<md-card-title>Login</md-card-title>
<md-card-content>
<form class="example-form">
<div>
<md-form-field class="example-full-width">
<input mdInput placeholder="Username" type="text">
</md-form-field>
</div>
<div>
<md-form-field class="example-full-width">
<input mdInput placeholder="Password" type="password">
</md-form-field>
</div>
</form>
</md-card-content>
</md-card>
</div>
</div>
</div>
**
解决方案
居中:
css:
.container{
position: fixed;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
width:100%;
}
要设置样式matInput
(以前的mdInput
),请尝试以下选项之一:
- 使用::ng-deep:
使用/Deep/阴影穿透后代组合器强制样式 通过子组件树向下移动到所有子组件 视图。/Deep/Combinator适用于任何深度的嵌套组件, 的视图子级和内容子级都适用。 组件。仅在模拟视图中使用/Deep/、>和::NG-Deep 封装。仿真视图是默认视图,也是最常用的视图 封装。有关详细信息,请参见控制视图 封装部分。穿透阴影的后代组合体是 已弃用,正在从主要浏览器和工具中删除支持。 因此,我们计划取消角度支持(对于所有3个/Deep/,> 和::Ng-Deep)。在此之前::Ng-Deep应该是更广泛的 与工具的兼容性。
css:
::ng-deep .mat-input-wrapper{
width:400px !important;
}
DEMO
2.使用ViewEncapsulation
..。组件CSS样式被封装到组件视图中,并且 不影响应用的睡觉。 为了控制该封装如何在每个组件的基础上发生, 您可以在组件元数据中设置视图封装模式。 从以下模式中选择: …… 无表示角度不进行视图封装。角度添加了 CSS添加到全局样式。作用域规则、隔离和 前面讨论的保护措施不适用。这本质上是 与将组件样式粘贴到HTML相同。
Typscript:
import {ViewEncapsulation } from '@angular/core';
....
@Component({
....
encapsulation: ViewEncapsulation.None
})
css:
.mat-input-wrapper{
width:400px !important;
}
DEMO
3.在style.css中设置样式
这次您必须使用!important
‘强制’样式。
style.css
.mat-input-wrapper{
width:400px !important;
}
DEMO
4.使用内联样式
<mat-form-field style="width:400px !important" ...>
...
</mat-form-field>
DEMO
相关文章