Bevor wir über die CSS-Priorität sprechen, müssen wir verstehen, was CSS ist und wofür es verwendet wird.
Lassen Sie uns zunächst eine kurze Erklärung von CSS geben: CSS ist die Abkürzung für Cascading Style Sheets. Seine Spezifikationen stellen einen einzigartigen Entwicklungsstand in der Geschichte des Internets dar. Heutzutage dürfte es unter Freunden, die sich mit der Erstellung von Webseiten befassen, nur wenige geben, die noch nichts von CSS gehört haben, da wir es bei der Erstellung von Webseiten häufig verwenden müssen.
Zweitens: Wir können über CSS ein reichhaltiges und leicht zu änderndes Erscheinungsbild für das Dokument festlegen, um die Arbeitsbelastung der Webseitenersteller zu verringern und dadurch die Produktions- und Nachwartungskosten zu senken.
Tatsächlich ist es völlig überflüssig, darüber zu sprechen, was CSS ist und welche Funktionen es hat. Ich glaube, dass Freunde, die sich mit der Erstellung von Webseiten befassen, bereits mehr oder weniger damit in Berührung gekommen sind.
Kommen wir näher zum heutigen Thema:
1. Was ist CSS-Priorität?
Die sogenannte CSS-Priorität bezieht sich auf die Reihenfolge, in der CSS-Stile im Browser analysiert werden.
2. CSS-Prioritätsregeln
Da Stile Vorrang haben, wird es eine Regel zur Vereinbarung dieser Priorität geben, und diese „Regel“ steht im Mittelpunkt dieses Artikels.
Spezifität in einem Stylesheet beschreibt das relative Gewicht verschiedener Regeln. Seine Grundregeln sind:
Schreiben Sie abschließend die drei Zahlen in der richtigen Reihenfolge, ohne Leerzeichen oder Kommas hinzuzufügen, um eine dreistellige Zahl zu erhalten (css2.1 verwendet 4 Ziffern). (Beachten Sie, dass Sie die Zahl in eine größere Zahl mit drei Ziffern umwandeln müssen.) Anhand der endgültigen Liste der dem Selektor entsprechenden Zahlen lässt sich leicht feststellen, welche Merkmale der höheren Zahl diejenigen der niedrigeren Zahl überschreiben.
Zum Beispiel:
3. Auswahlliste für die Merkmalsklassifizierung
Hier ist eine Liste der Selektoren, sortiert nach Attribut:
Wähler | Charakteristischer Wert |
h1 {Farbe:blau;} | 1 |
p em {Farbe:lila;} | 2 |
.apple {Farbe:rot;} | 10 |
p.bright {Farbe:Gelb;} | 11 |
p.bright em.dark {Farbe:braun;} | zweiundzwanzig |
#id316 {Farbe:Gelb} | 100 |
Allein anhand der obigen Tabelle scheint es schwer zu verstehen. Hier ist eine weitere Tabelle:
Wähler | Charakteristischer Wert |
h1 {Farbe:blau;} | 1 |
p em {Farbe:lila;} | 1+1=2 |
.apple {Farbe:rot;} | 10 |
p.bright {Farbe:Gelb;} | 1+10=11 |
p.bright em.dark {Farbe:braun;} | 1+10+1+10=22 |
#id316 {Farbe:Gelb} | 100 |
Aus dem Obigen ist leicht ersichtlich, dass die Gewichtung des HTML-Tags 1, die Gewichtung der Klasse 10, die Gewichtung der ID 100 und die geerbte Gewichtung 0 beträgt (wird später besprochen).
Addieren Sie die Zahlenfolgen Stück für Stück gemäß diesen Regeln, um das endgültige Gewicht zu erhalten, und vergleichen Sie sie dann beim Vergleichen und Auswählen Stück für Stück von links nach rechts.
Das Prioritätsproblem ist eigentlich ein Konfliktlösungsproblem. Wenn dasselbe Element (Inhalt) vom CSS-Selektor ausgewählt wird, müssen je nach Priorität unterschiedliche CSS-Regeln ausgewählt werden.
Allerdings müssen wir über die Vererbung von CSS sprechen.