Comment définir la largeur de tapis de colonne de table dans angulaire?
Ici dans mon mat-tableau de 6 colonnes lors de la colonne n'a pas plus de mots, puis il ressemble à l'Image 1, mais quand toute la colonne a plus de mots, puis de l'INTERFACE utilisateur ressemble à l'Image de-2, de sorte que la façon de définir l'INTERFACE utilisateur comme Image-1 lorsque toute la colonne a plus de mots dans angulaire 6 ?
Image-1
Image-2
user.component.html
<div class="mat-elevation-z8">
<table mat-table [dataSource]="dataSource">
<ng-container matColumnDef="userimage">
<th mat-header-cell *matHeaderCellDef> # </th>
<td mat-cell *matCellDef="let element">
<img src="{{commonUrlObj.commonUrl}}/images/{{element.userimage}}" style="height: 40px;width: 40px;"/>
</td>
</ng-container>
<ng-container matColumnDef="username">
<th mat-header-cell *matHeaderCellDef> Full Name </th>
<td mat-cell *matCellDef="let element"> {{element.username}} ( {{element.usertype}} )</td>
</ng-container>
<ng-container matColumnDef="emailid">
<th mat-header-cell *matHeaderCellDef> EmailId </th>
<td mat-cell *matCellDef="let element"> {{element.emailid}} </td>
</ng-container>
<ng-container matColumnDef="contactno">
<th mat-header-cell *matHeaderCellDef> Contact No. </th>
<td mat-cell *matCellDef="let element"> {{element.contactno}} </td>
</ng-container>
<ng-container matColumnDef="enabled">
<th mat-header-cell *matHeaderCellDef> Enabled </th>
<td mat-cell *matCellDef="let element" style="color: blue">
<ng-container *ngIf="element.enabled == 'true'; else otherss">Enabled</ng-container>
<ng-template #otherss>Disabled</ng-template>
</td>
</ng-container>
<ng-container matColumnDef="action">
<th mat-header-cell *matHeaderCellDef> Action </th>
<td mat-cell *matCellDef="let element" fxLayoutGap="5px">
<button mat-mini-fab color="primary" routerLink="/base/editUserDetails/{{element.userid}}"><mat-icon>edit</mat-icon></button>
<button mat-mini-fab color="primary" routerLink="/base/viewUserDetails/{{element.userid}}"><mat-icon>pageview</mat-icon></button>
</td>
</ng-container>
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
<tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
</table>
<mat-paginator [pageSizeOptions]="[5, 10, 20, 50 ,100]" showFirstLastButtons></mat-paginator>
- Avez-vous cherché
wrap-text
ouline-break
? - Pouvez-vous ajouter Stackblitz exemple? Donc, je peux essayer sur votre code source
- Regardez:stackblitz.com/edit/angular-nvdbmj
- Mais pas sûr qu'ils vont vous aider à
- il fonctionne, mais à la place de débordement, je peux montrer 2222_ _ _ est-ce possible?
- Oui mais je ne sais pas comment faire, Google
- J'ai modifié selon vos besoins --> découvrez -->stackblitz.com/edit/angular-nvdbmj
- meta.stackexchange.com/q/5234
Vous devez vous connecter pour publier un commentaire.
à l'aide de css, nous pouvons ajuster la largeur de colonne spécifique que j'ai mis dans le code ci-dessous.
de l'utilisateur.composante.css
Comme suggéré dans les commentaires, vous pouvez le faire en utilisant le CSS ci-dessous:
Ici est un
StackBlitz Exemple
avec des exemples de DonnéesSi vous utilisez scss pour vos styles, vous pouvez utiliser un mixin pour aider à générer le code. Vos styles de sortir rapidement de la main si vous avez mis toutes les propriétés de tous les temps.
C'est un exemple très simple, vraiment rien de plus qu'une preuve de concept, vous pouvez l'étendre avec de multiples propriétés et les règles en tant que de besoin.
Puis dans votre composant, votre table est défini, vous faites simplement ceci:
Cela génère quelque chose comme ceci:
Dans cette version
width
devientflex: value; min-width: value
.Pour votre exemple, vous pouvez ajouter
wrap: true
ou quelque chose comme ça comme un nouveau paramètre.