Ich habe den folgenden Code
<mat-tab-group>
<div *ngFor="let question of subcategory.questions">
<mat-tab label={{question.question_id}} class="question-tab">{{question.question}}</mat-tab>
</div>
</mat-tab-group>
welches anzeigt wie:
Ich möchte jedoch die Breite der Registerkarten wie folgt reduzieren:
Das Problem ist, wenn ich CSS zur Laufzeit ändere, wird es gut angepasst, aber wenn ich CSS wie folgt setze:
.mat-tab {
min-width: 50px !important;
}
.mat-tab-label[_ngcontent-c9]{
min-width: 50px !important;
}
Es funktioniert nicht. Irgendeine Idee, wie man das angeht?
Versuche dies:
/deep/.mat-tab-label, /deep/.mat-tab-label-active{
min-width: 0!important;
padding: 3px!important;
margin: 3px!important;
}
HINWEIS : In angular 8 /deep/
Funktioniert nicht ... können Sie ::ng-deep
Verwenden, wie folgt:
::ng-deep.mat-tab-label, ::ng-deep.mat-tab-label-active{
min-width: 0!important;
padding: 3px!important;
margin: 3px!important;
}
In meinem Fall funktionierte die akzeptierte Antwort nicht gut - beim Wechseln zwischen Registerkarten änderte sich die Breite von body
einer bestimmten Registerkarte und es sah nicht gut aus. Deshalb habe ich einen Mat-Tab-Link hinzugefügt, um das Problem zu beheben
::ng-deep.mat-tab-link, ::ng-deep.mat-tab-label, ::ng-deep.mat-tab-label-active{
min-width: 97px!important;
}