<md-grid-list cols="3" >
<md-grid-tile style="overflow : scroll;align-items: initial;">
<app-general style="padding-left : 1em;" ></app-general>
</md-grid-tile>
<md-grid-tile class="dummy" style="overflow : scroll;align-items: initial;">
<app-slab2g style="padding-left : 1em;" > </app-slab2g>
</md-grid-tile>
<md-grid-tile style="overflow : scroll;align-items: initial;">
<app-slab3g style="padding-left : 1em;" > </app-slab3g>
</md-grid-tile>
</md-grid-list>
Comment aligner des éléments à l'intérieur de la mosaïque md-grid-tile autrement que par son alignement central par défaut
Vous pouvez utiliser ::ng-deep
pour remplacer le css par défaut de md-grid-tile
.
css:
::ng-deep md-grid-tile.mat-grid-tile .mat-figure {
align-items: initial; /*vertical alignment*/
justify-content: initial; /*horizontal alignment*/
}
c'est la seule solution fiable que j'ai trouvée jusqu'à présent. ! important n'a pas fonctionné. :: ng-deep gâche le code principal. Si vous utilisez div et Absolute en CSS, vous pouvez aligner la div comme vous le souhaitez.
html
<mat-grid-tile *ngFor="let project of projects"
[style.background]="project.Color" (click)="openDialog(project)" >
<div fxLayoutWrap fxLayoutAlign="start center" class="footer">
</div>
</mat-grid-tile>
css
.footer {
position: absolute;
left: 5px;
bottom: 5px;
}
Après beaucoup de sang et de larmes, j'ai pu styliser la première colonne d'une grille de matériau angulaire sans affecter les autres grilles de la page. Le style ci-dessous s'alignera à gauche et centrera verticalement le nom de personne uniquement dans ce <mat-grid-list>
.
Matière angulaire:
<mat-grid-list cols="4" rowHeight="4:1">
<mat-grid-tile colspan="2">
<div class="leftVerticalAlign">
Persons Name
</div>
</mat-grid-tile>
<mat-grid-tile>Persons Phone</mat-grid-tile>
<mat-grid-tile [style.border-left]="'12px solid gray'">Persons Email</mat-grid-tile>
</mat-grid-list>
Le CSS insaisissable:
.leftVerticalAlign {
left: 1em;
position: absolute;
top: 50%;
transform: translate(0px, -50%);
margin: 0;
}
J'ai ajouté un style border-left
supplémentaire à cette application, ce qui représente un autre moyen d'appliquer des styles, mais il est limité à ce que j'ai remarqué.
Pour plus d'informations sur l'alignement horizontal et vertical, consultez w3schools
Ils m'ont sauvé la vie sur celui-ci.
html
<mat-grid-tile class="title-tem">
<div class="item-content">
hi
</div>
</mat-grid-tile>
css
.title-tem >::ng-deep .mat-figure{
align-items: flex-start;
justify-content: flex-start;
}
ça va être du travail :)