CSS-Rangfolge: Warum Inline-Stile überschrieben werden
In CSS werden Stile basierend auf der Rangfolge ihrer Regeln auf Elemente angewendet. Wenn mehrere Regeln auf dasselbe Element abzielen, wird dasjenige mit der höchsten Priorität wirksam.
Im bereitgestellten Beispiel haben Sie einen Inline-Stil, der padding-left: 10px für td-Elemente in einer Tabelle mit der rechten Spalte festlegt AUSWEIS. Allerdings setzt ein Stil aus einem referenzierten Stylesheet den Rand und den Abstand für alle Elemente innerhalb der .rightColumn-Klasse auf 0. Das Problem besteht darin, dass die Stile aus dem referenzierten Stylesheet eine höhere Priorität haben, was dazu führt, dass die Inline-Stile überschrieben werden.
Berechnung der Spezifität
CSS-Rangfolge wird durch die Spezifität von bestimmt Regeln. Die Spezifität wird anhand der folgenden Kriterien berechnet:
Zum Beispiel hat eine Regel mit dem Selektor .rightColumn * eine Spezifität von 0010 (a = 0, b = 0, c = 1, d = 0), während eine Regel mit dem Selektor td hat eine Spezifität von 0001 (a = 0, b = 0, c = 0, d = 1). Da 0010 größer als 0001 ist, hat die Regel aus dem referenzierten Stylesheet höhere Priorität.
Problem lösen
Um dieses Problem zu beheben und die Inline-Stile anzuwenden, müssen Sie Folgendes tun zwei Optionen:
Das obige ist der detaillierte Inhalt vonWarum werden meine Inline-Stile von meinem Stylesheet überschrieben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!