angular / angular/components

MatIcon `inline` doesn't work with `svgIcon`

Ouverte
#16,483 3 commentaires 11 réactions 0 personnes assignées Voir sur GitHub
area: material/icon P3
Langage dominant
TypeScript
Étoiles
25k
Forks
6.8k
Merge moyen
1 j 8 h
PR mergées (30 j)
91

Description

#### Reproduction

https://stackblitz.com/edit/angular-s9aswa

#### Expected Behavior

Loading an icon via SVG and displaying it `inline` should make its size proportionate to the text.

#### Actual Behavior

The size of the icon did not change and the icon's position broke.

I think it has to do with how the SVG has `width: 100%; height: 100%` applied to it:

https://github.com/angular/components/blob/738f10c9931642469f3699d4c8ff50b1e66a960e/src/material/icon/icon-registry.ts#L525

Maybe it could change to `1em` for `inline` icons?

Alternatively if `inline` is not supported for `svgIcon` then it should be documented.

Note: I had to inline the SVG as base64 because the original StackBlitz is broken - I will open another issue for this.

#### Environment

- Angular: Docs Stackblitz (8.1.0)
- CDK/Material: Docs Stackblitz (8.0.2)
- Browser(s): Chrome 75
- Operating System (e.g. Windows, macOS, Ubuntu): Windows 10

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Start with the linked StackBlitz reproduction, then inspect src/material/icon/icon-registry.ts around line 525, where SVG sizing is applied. Confirm how inline SVG icons behave with svgIcon and establish whether the final result should make the icon proportionate to surrounding text or document that combination as unsupported.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
angular, typescript
Domaine
frontend
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.