我无法找到如何使Angular Material Tab组件居中。
可以在这里看到: https://material.angular.io/components/tabs/overview
我认为甚至有一种方法可以做到这一点,目前还不清楚该怎么做imo。
以下是文档的屏幕截图。 属性是什么意思?它是在HTML中还是需要在打字稿中设置?
我真的很感谢你的帮助。
答案 0 :(得分:6)
您要查找的内容是md-stretch-tabs
属性,该属性应该应用于<md-tab-group>
:
<md-tab-group md-stretch-tabs>
<md-tab label="Tab 1">
<p>Content for tab 1.</p>
</md-tab>
<md-tab label="Tab 2">
<p>Content for tab 2.</p>
</md-tab>
...
</md-tab-group>
答案 1 :(得分:2)
答案 2 :(得分:1)
您可以在使用md-tab-body
属性投影内容时设置位置值。
应使用position
设置此typescript code
值。
<md-tab-group>
<md-tab label="Tab 1" >
<div md-tab-body #tab >
<button (click)="clickedMe()">Clicked</button>
</div>
</md-tab>
<md-tab label="Tab 2">Content 2</md-tab>
</md-tab-group>
打字稿代码
@ViewChild('tab') tab: TemplateRef;
ngAfterViewInit(){
console.log(this.tab);
this.tab.position = 100;
}
ngAfterContentInit(){
console.log(this.tab);
}
clickedMe(){
console.log(this.tab);
}
<强> LIVE DEMO 强>
答案 3 :(得分:0)
我也尝试过先使用API调用中的位置将它们对齐在中心。但是,放弃之后,我在组件样式中添加了以下内容:
.mat-tab-labels{
justify-content: center;
}
然后,将封装装饰器包含在我的组件打字稿文件中:
import { Component, OnInit, ViewEncapsulation } from '@angular/core';
@Component({
selector: 'mytabs',
templateUrl: './mytabs.component.html',
styleUrls: ['./mytabs.component.scss'],
encapsulation: ViewEncapsulation.None
})
由@Edrik提到的“ md-stretch-tab”属性(如名称中所述)会扩展选项卡。但是,通过这种方法,我们只是将它们对齐在中心。