Ist die Reihenfolge einer Klasse in einem Selektor wichtig? Wenn ja, kann ich die Bestellung angeben?

8

Gibt es einen Unterschied zwischen:

%Vor%

und

%Vor%

Wenn für diese Klassen in Konflikt stehende CSS-Regeln bestehen, ist die Reihenfolge von Bedeutung?

Gibt es in jQuery irgendwelche APIs zum Nachbestellen? Wenn ich addClass() anrufe geht es immer am Ende?

    
leora 09.12.2011, 00:55
quelle

3 Antworten

6

Die Reihenfolge spielt keine Rolle.

Ссылка

CSS-Priorität

Der wichtige Teil hier ist

  

Wenn zwei Regeln in allen oben genannten gleich sind, gewinnt der zuletzt erklärte. CSS, eingebettet in HTML, kommt immer nach externen Stylesheets, unabhängig von der Reihenfolge im HTML

    
James Montagne 09.12.2011, 00:58
quelle
3

Die Reihenfolge der Klassen in HTML spielt keine Rolle, aber die Reihenfolge innerhalb des CSS ist von Bedeutung. Zum Beispiel, wenn Sie hatten:

%Vor%

Beide Spannen mit class="one two" und class="two one" würden blauen Text erzeugen, weil die Klasse "two" zuletzt definiert ist. Aber wenn wir das zu

geändert haben %Vor%

und dasselbe getan haben, würden beide Spannen jetzt roten Text haben, weil die Klasse "Eins" zuletzt definiert ist. Bedenken Sie auch, dass die ID diese beiden Klassen überschreibt, egal, was passiert, wenn ich folgendes definiere:

%Vor%

und hinzugefügt id="test" , dann haben die Bereiche immer grünen Text, egal wo im Dokument der Klassen- und ID-Selektor definiert ist, da eine ID natürlich spezifischer ist als eine Klasse (andere Instanzen können eine Klasse spezifischer machen) als eine ID, usw.).

Da dies zutrifft, ist die Reihenfolge der von jQuery zugewiesenen Klassen völlig irrelevant. Sie sollten sich keine Sorgen machen, sie neu zu ordnen, aber ja, addClass fügt nur die Klasse am Ende der Liste hinzu.

    
animuson 09.12.2011 01:01
quelle
0

Wenn Sie die classList DOM-Eigenschaft verwenden, ist die Reihenfolge signifikant.

Das zurückgegebene Objekt enthält die Klassen als numerische Eigenschaften. aufsteigende Reihenfolge als die Klassennamen von links nach rechts.

jsFiddle .

    
alex 09.12.2011 01:10
quelle

Tags und Links