Heim > Web-Frontend > CSS-Tutorial > Warum funktionieren meine Mat-Select-Bedienfeldstile nicht in eckigem Material?

Warum funktionieren meine Mat-Select-Bedienfeldstile nicht in eckigem Material?

Susan Sarandon
Freigeben: 2024-10-27 03:11:03
Original
352 Leute haben es durchsucht

Why Are My Mat-Select Panel Styles Not Working in Angular Material?

Styling von mat-select in Angular Material

Beim Anpassen des Erscheinungsbilds von mat-select kann es zu Herausforderungen beim Styling der Panel-Komponente kommen. Obwohl Sie dem empfohlenen Ansatz folgen, die Eigenschaft „panelClass“ zum Angeben benutzerdefinierter Stile zu verwenden, werden die Stile nicht angewendet, was Sie verwirrt.

Warum die Stile nicht funktionieren

Angular Material verwendet Mat-Select -content als Klassenname für den Inhalt der Auswahlliste. Um diese Komponente zu gestalten, stehen mehrere Methoden zur Verfügung:

1. Verwenden von ::ng-deep

Verwenden Sie den ::ng-deep schattendurchdringenden Nachkommenkombinator, um Stile durch untergeordnete Komponenten zu erzwingen.

<code class="css">::ng-deep .mat-select-content {
  width: 2000px;
  background-color: red;
  font-size: 10px;
}</code>
Nach dem Login kopieren

2. Verwenden von ViewEncapsulation

Konfigurieren Sie die Ansichtskapselung der Komponente auf „Keine“, damit Stile der Isolation der Komponente entkommen können.

<code class="typescript">@Component({
  ...
  encapsulation: ViewEncapsulation.None
})</code>
Nach dem Login kopieren

3. Festlegen des Klassenstils in style.css

Verwenden Sie die Datei style.css, um benutzerdefinierte Stile zu definieren und erzwingen Sie diese mit !important, um alle vorhandenen Stile zu überschreiben.

<code class="css">.mat-select-content {
  width: 2000px !important;
  background-color: red !important;
  font-size: 10px !important;
}</code>
Nach dem Login kopieren

4. Verwenden von Inline-Stilen

Wenden Sie Inline-Stile direkt auf die Mat-Option-Elemente an und überschreiben Sie alle geerbten Stile.

<code class="html"><mat-option style="width: 2000px; background-color: red; font-size: 10px;"></code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWarum funktionieren meine Mat-Select-Bedienfeldstile nicht in eckigem Material?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage