CSS-Kaskadierung bezieht sich auf die Überlagerung mehrerer CSS-Stile. Wenn ein CSS-Stil dasselbe Attribut für dasselbe Element konfiguriert, behandelt er Konflikte basierend auf den Kaskadierungsregeln (Gewichtungen) und wählt die vom CSS-Selektor angegebenen Attribute mit hoher Gewichtung aus. Im Allgemeinen wird es auch so beschrieben, dass ein höheres Gewicht ein geringeres Gewicht abdeckt, es wird auch als Stapel bezeichnet.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, CSS3- und HTML5-Version, Dell G3-Computer.
CSS-Kaskadierung (wichtig)
bezieht sich auf die Überlagerung mehrerer CSS-Stile.
ist die Fähigkeit des Browsers, Konflikte zu behandeln. Wenn ein Attribut über zwei identische Selektoren auf dasselbe Element festgelegt wird, kaskadiert ein Attribut das andere Attribut.
Prinzipien:
1. Bei Stilkonflikten gilt als Prinzip das Proximity-Prinzip, also die Schreibposition von CSS.
2. Stile stehen nicht in Konflikt oder kaskadieren
CSS-Vererbung
Beim Schreiben eines CSS-Stylesheets erbt das untergeordnete Tag einige Stile des übergeordneten Tags, z. B. Textfarbe und Schriftgröße. Um eine vererbbare Eigenschaft festzulegen, wenden Sie sie einfach auf das übergeordnete Element an.
Hinweis: Durch die richtige Verwendung der Vererbung kann der Code vereinfacht und die Komplexität von CSS-Stilen verringert werden. Untergeordnete Elemente können den Stil des übergeordneten Elements erben (Text, Schriftart, Linie – der Anfang dieser Elemente kann geerbt werden, ebenso wie das Farbattribut).
CSS-Priorität
Beim Definieren von CSS-Stilen zwei oder mehr Regeln werden häufig angezeigt. Wenn sie auf dasselbe Element angewendet werden, treten Prioritätsprobleme auf.
Bei der Berücksichtigung des Gewichts müssen Anfänger auch auf einige Sondersituationen achten, wie folgt:
Das Gewicht des geerbten Stils beträgt 0. Das heißt, in einer verschachtelten Struktur ist es egal, wie groß das Gewicht des Stils des übergeordneten Elements ist Es wird vom untergeordneten Element geerbt, dessen Gewicht beide 0 sind, was bedeutet, dass der vom untergeordneten Element definierte Stil den geerbten Stil überschreibt.
Inline-Stile haben Vorrang. Das Gewicht des Inline-Stils des Elements, auf das das Stilattribut angewendet wird, ist sehr hoch, was als viel größer als 100 verstanden werden kann. Kurz gesagt, es hat eine höhere Priorität als die oben genannten Selektoren.
Wenn die Gewichte gleich sind, folgt CSS dem Proximity-Prinzip, was bedeutet, dass der Stil, der dem Element am nächsten liegt, die höchste Priorität hat, oder der Stil mit der letzten Rangfolge die höchste Priorität hat.
CSS definiert einen !important-Befehl, der die höchste Priorität erhält. Es wird auch gesagt, dass unabhängig vom Gewicht und der Entfernung der Stilposition! wichtig hat die höchste Priorität.
CSS-Spezifität
Für die Berechnung des CSS-Gewichts ist eine Reihe von Formeln erforderlich. Der Wert ist von links nach rechts, wobei die größte auf der linken Seite ist . Es gibt keine Schrittweite zwischen den Ziffern, Stufen können nicht überschritten werden.
Geerbte oder *-Werte: 0, 0, 0, 0
Jeder Element-(Tag-)Wert: 0, 0, 0, 1
Jede Klasse, Pseudoklassenwerte sind: 0, 0, 1, 0
Jeder ID ist: 0, 1, 0, 0
Jeder Inline-Stilwert: 1, 0, 0, 0
Jeder !wichtige Wert: unendlich
1 Es gibt keine Basis zwischen den Ziffern.
2. Durch den Einfluss der Vererbung ist das Gewicht 0, [das heißt, der Stil trägt keine Textbeschriftungen] wie:
.colorRed{ color:#f00; /* 没有选中p标签,所以只是通过继承影响的,权重为0 */ } p { color:#0f0; /* 权重为1 */ } <div class="colorRed"> <p>颜色</p> </div>
Der Code lautet wie folgt:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> #father #son{ /*权重为0,2,0,0*/ color:blue; } #father p .c2{ /*权重为0,1,1,1*/ color:black; } div .c1 p .c2{ /*权重为0,0,2,2*/ color:red; } #father { color:green !important; /*继承的权重为0*/ } </style> </head> <body> <div id="father"> <p id="son">颜色</p> </div> </body> </html>
Der Effekt ist wie folgt :
(Lernvideo-Sharing: CSS-Video-Tutorial)
Das obige ist der detaillierte Inhalt vonWas ist CSS-Kaskade?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!