Je veux avoir sous le texte de l'option des lignes supplémentaires qui décrivent l'option. Par défaut, mat-select limite le nombre de caractères et ajoute "..." à la fin de la ligne. Je veux avoir l'option de ligne multiple de nécessaire. démo stakckblitz: https://stackblitz.com/edit/angular-wj9svw Mon code:
export class SelectOverviewExample {
foods: Food[] = [
{value: 'steak-0', viewValue: 'Steak longDescription longDescription longDescription longDescription longDescription'},
{value: 'pizza-1', viewValue: 'Pizza longDescription longDescription longDescription longDescription longDescription longDescription v v longDescription'},
{value: 'tacos-2', viewValue: 'Tacos'}
];
}
html:
<mat-form-field>
<mat-select placeholder="Favorite food">
<mat-option *ngFor="let food of foods" [value]="food.value">
{{food.viewValue}}
<b> some additional text text text text texttext </b>
</mat-option>
</mat-select>
</mat-form-field>
Utilisez le CSS suivant:
.mat-select-panel mat-option.mat-option {
height: unset;
}
.mat-option-text.mat-option-text {
white-space: normal;
}
OR
/deep/ .mat-select-panel mat-option.mat-option {
height: unset;
}
/deep/ .mat-option-text.mat-option-text {
white-space: normal;
}
Un exemple de démonstration est ici - https://stackblitz.com/edit/angular-material2-issue-ndtstg
.mat-option {
margin: 1rem 0;
overflow: visible;
line-height: initial;
Word-wrap: break-Word;
white-space: pre-wrap;
}
.mat-option i {
display: block;
font-size: 1.5rem;
opacity: 0.6;
margin-left: 0.5rem;
}
Cela a également été utile