Dans mon Angular (stylisée avec Angular Material), je dois afficher certaines données à l'aide d'une table Material).
Ce tableau a un en-tête collant, plusieurs lignes et un pied de page collant.
Par défaut, les lignes ont une hauteur de 62,5 pixels et j'aimerais remplacer cette valeur.
Comment puis-je y parvenir?
J'ai essayé de remplacer le style css pour tr/tr.mat-row/tr.mat-header-row etc., sans succès. J'ai aussi essayé d'utiliser :: ng-deep.
De plus, ma ligne de pied de page collante a une hauteur de 48 pixels, ce que je n'ai pas défini !! Est-ce que quelqu'un sait ce qui se passe?
Je suis en mesure d'éditer le CSS de la ligne de pied de page avec :: ng-deep, j'ai mis la police-weight à bold , mais quand je mets le attribut hauteur rien ne se passe.
::ng-deep tr.mat-footer-row {
border: 1px solid #e7e7e7;
font-weight: bold;
}
Essayez de l'ajouter sur votre styles.scss.
tr.mat-footer-row {
border: 1px solid #e7e7e7;
font-weight: bold;
height: #px !important;
}
Pour modifier la hauteur par défaut (48 px) dans mat-table, vous devez spécifier une classe pour chaque ligne du html, par exemple, lorsque vous définissez les lignes:
<tr mat-row *matRowDef="let row; columns: displayedCol;" class="table-row"></tr>
Ensuite, vous pouvez remplacer la hauteur en définissant dans votre fichier css principal la classe 'table-row' avec une hauteur spécifique, par exemple:
.table-row {
height: 30px !important;
}
Nous le prouvons avec angular 7 and angular material version 7.3.7.
Cordialement
Cela fonctionne correctement.
tr.mat-footer-row,
tr.mat-row {
border: 1px solid #e7e7e7;
font-weight: bold;
height: 20px !important;
}
Avec matière 5
mat-row.mat-row.ng-star-inserted
{ height: 32px !important; }
.mat-row{ min-height: 30px; }
Sur un point connexe, j'ai eu un problème où mes lignes de table de tapis étaient trop hautes et j'ai essayé de définir la hauteur en CSS pour la réduire.
Il s'est avéré que le problème était que "min-height" avait été réglé sur "mat-header-row" et "mat-row" quelque part profondément à l'intérieur du matériau (pas dans mon code source).
La solution était simplement:
.mat-header-row, .mat-row {
min-height: 30px;
}
Vous pouvez spécifier la hauteur du pied de page du tableau dans tr.mat-footer-row
.
tr.mat-footer-row {
height: 100px;
}
Voici un exemple StackBlitz https://stackblitz.com/angular/gjjjdpjqvvde?file=app%2Ftable-sticky-footer-example.css