In diesem Szenario wird der Inline-Stil padding-left: 10px, der auf Tabellenzellen in der rechten Spalten-ID angewendet wird, durch eine widersprüchliche Regel überschrieben aus einem externen Stylesheet. Das referenzierte Stylesheet enthält eine Regel, die den Rand und den Abstand für alle Elemente innerhalb der rightColumn-Klasse auf 0 setzt.
Um zu bestimmen, welche CSS-Regel Vorrang hat, wird ein Konzept namens Spezifität verwendet kommt ins Spiel. Spezifität ist ein Maß dafür, wie spezifisch der Selektor einer CSS-Regel ist. Je spezifischer ein Selektor, desto höher ist seine Spezifität.
CSS 2.1 definiert die folgenden Regeln zur Berechnung der Spezifität:
Diese vier Werte werden in der Form a-b-c-d verkettet, wobei a der Wert aus dem ist erste Regel, b aus der zweiten Regel und so weiter. Je höher der numerische Wert, desto höher die Spezifität.
In diesem Fall hat der Inline-Stil eine Spezifität von 0001 (keine ID-Attribute, keine anderen Attribute oder Pseudoklassen, ein Elementname). Die widersprüchliche Regel aus dem externen Stylesheet hat eine Spezifität von 0010 (keine ID-Attribute, ein anderes Attribut oder eine Pseudoklasse, keine Elementnamen).
Da 0010 höher als 0001 ist, wird die Regel aus dem externen Stylesheet übernommen Vorrang und überschreibt den Inline-Stil.
Um die widersprüchliche Regel außer Kraft zu setzen, gibt es zwei Hauptoptionen:
Das obige ist der detaillierte Inhalt vonWie kann ich eine widersprüchliche CSS-Regel aus einem externen Stylesheet überschreiben, wenn ich Inline-Stile verwende?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!