Ist die Reihenfolge oder Reihenfolge der Regeln in CSS signifikant?

7

Ist die Reihenfolge oder Reihenfolge von Regeln in CSS signifikant?

Dieser Beitrag sagt, dass es wichtig ist: Ordnung der CSS-Regeln ist wichtig !! !!!!!!!!

Ich habe nichts davon in der CSS-Spezifikation bemerkt.

Soll Die Selektivität eines Selektors berechnen , sagen Sie, dass wenn und nur wenn zwei Regeln haben die gleiche Spezifität, dann ist es die spätere der beiden Regeln (dh welche Regel nach der vorherigen Regel definiert ist), die die effektive Regel ist?

    
ChrisW 07.07.2009, 15:59
quelle

5 Antworten

9

Ordnung ist wichtig. Wenn die Spezifität gleich ist, gewinnt die später deklarierte Regel. Siehe Cascading Order in der Spezifikation:

  

... Abschließend Sortierung nach Reihenfolge: Wenn zwei Deklarationen das gleiche Gewicht, den gleichen Ursprung und die gleiche Spezifität haben, gewinnt Letzteres. Deklarationen in importierten Stylesheets werden vor allen Deklarationen im Stylesheet selbst betrachtet.

    
Jason Creighton 07.07.2009, 16:03
quelle
5

Ihre Annahme ist richtig. Eine CSS-Regel, die später definiert wird, überschreibt eine vorherige Definition, es sei denn, die Regel ist weniger spezifisch als die vorherige.

Um mehr Klarheit über das Wort "override" zu haben: Es fügt dem vorherigen Stil hinzu. Wenn eine spätere Regel keinen bestimmten Stil angibt, bleibt der erste noch gültig.

    
Philippe Leybaert 07.07.2009 16:02
quelle
3

Wenn Sie zwei kollidierende Regeln für dieselbe CSS-Datei haben, wird die letzte Vorrang haben.

    
Sergio 07.07.2009 16:02
quelle
3

Wenn Sie auf der von Ihnen geposteten Spezialseite ein wenig nach oben scrollen, gelangen Sie zu diesem :

6.4.1 Kaskadierreihenfolge

Um den Wert für eine Element / Eigenschaft-Kombination zu finden, müssen Benutzeragenten die folgende Sortierreihenfolge anwenden:

  1. Suchen Sie alle Deklarationen, die für das fragliche Element und die betreffende Eigenschaft gelten, nach dem Zielmedientyp. Deklarationen werden angewendet, wenn der zugehörige Selektor mit dem betreffenden Element übereinstimmt und das Zielmedium mit der Medienliste in allen @media-Regeln übereinstimmt, die die Deklaration und alle Links auf dem Pfad enthalten, über den das Stylesheet erreicht wurde.
  2. Sortieren nach Wichtigkeit (normal oder wichtig) und Herkunft (Autor, Benutzer oder Benutzeragent). In aufsteigender Rangfolge:
    1. Benutzeragentendeklarationen
    2. Benutzer normale Deklarationen
    3. Autor normale Deklarationen
    4. Autor wichtige Deklarationen
    5. Benutzer wichtige Deklarationen
  3. Ordne Regeln mit derselben Wichtigkeit und demselben Ursprung nach Spezifität des Selektors: spezifischere Selektoren überschreiben allgemeinere Selektoren. Pseudo-Elemente und Pseudo-Klassen werden als normale Elemente bzw. Klassen gezählt.
  4. Abschließend Sortierung nach Reihenfolge: Wenn zwei Deklarationen das gleiche Gewicht, den gleichen Ursprung und die gleiche Spezifität haben, dann wird letzterer angegeben. Deklarationen in importierten Stylesheets gelten vor allen Deklarationen im Stylesheet selbst.
Greg 07.07.2009 16:04
quelle
2

Dies ist in 6.4.1 Kaskadierung angegeben. Es ist etwas komplexer als nur die Reihenfolge, da es auch Überlegungen wie "! Wichtig" und Benutzer-gegen-Autor-Regeln gibt. Spezifität und die Kaskade arbeiten zusammen.

    
NickFitz 07.07.2009 16:05
quelle

Tags und Links