Heim  >  Artikel  >  Web-Frontend  >  Was ist der Unterschied zwischen der Definition von CLASS in CSS mit Leerzeichen und ohne Leerzeichen?

Was ist der Unterschied zwischen der Definition von CLASS in CSS mit Leerzeichen und ohne Leerzeichen?

黄舟
黄舟Original
2017-07-22 09:42:042683Durchsuche

.example .pp{  color: orange;
}.example.pp2 {  color: green;
}

Zum Beispiel sind die beiden oben genannten Definitionen eine mit Leerzeichen in der Mitte und die andere ohne Leerzeichen in der Mitte.

第一个class要这样写生效:<p class="example">文字文字<span class="pp">pp这个class生效</span>....</p>
第二个class要这样写生效:<p class="example pp2">pp2这个class生效</p>

Entschuldigung, warum ist das so? ?

.example .pp = E F ist der Nachkommenselektor.

.example.pp2 befindet sich auf einem Element und dieses Element hat nur dann eine Auswirkung, wenn es diese beiden Klassen enthält.

Es gibt einen Unterschied zwischen den beiden, einen großen Unterschied!

.example .pp wird durch ein Leerzeichen getrennt, das den Nachkommenselektor angibt, und die .pp in .example wird ausgewählt.
Zum Beispiel:

<div class="example">
    <div class="pp">被选择的元素</div>
</div>

.example.pp wählt Elemente aus, die sowohl example als auch pp in der Klasse enthalten.
Zum Beispiel:

<div class="example pp">
被选择的元素
</div>

Dies ist das Format eines CSS-Selektors, der festlegt, dass die Auswahlbedingungen ohne Leerzeichen in einer „und“-Beziehung stehen und diejenigen mit Leerzeichen in einer „übergeordneten“ Beziehung stehen. „Kind“-Beziehung und kann indirekt sein. Die „Vater-Sohn“-Beziehung

<style>
.e1.e2{
background-color:yellow;
}
.father .e3{
background-color:green;
}
</style>
</head>
<body>
<div class="father">
<p class="e1 e2">我住在 Duckburg。</p>
<p class="e3">我也住在 Duckburg。</p>
<div>
<p class="e3">他也住在 Duckburg。</p>
</div>
</div>
</body>

Der erste Absatz p im obigen Code hat zwei Klassen, e1 und e2. Beachten Sie, dass die Leerzeichen im Klassenattribut und im Leerzeichen im CSS haben unterschiedliche Bedeutungen. Das Leerzeichen im Klassenattribut ist die Beziehung zwischen „und“ und das Leerzeichen im CSS ist die Beziehung zwischen „Eltern“ und „Nachkomme“.

Das erste p wird in Gelb gerendert, da CSS den .e1.e2-Selektor verwendet, um diese Farbe dafür festzulegen. Das heißt, dieser Absatz hat beide Klassen. Natürlich kann der gleiche Effekt erzielt werden, indem in CSS nur .e1 anstelle von .e1.e2 verwendet wird, aber manchmal möchten wir nicht, dass der CSS-Selektor versehentlich andere Tags trifft, also schreiben wir ihn einfach im Detail.

Das zweite p wird von .father .e3 grün gerendert, da die Klasse dieses p e3 ist und es der Nachkomme des Tags mit der Klasse Father ist, also ist es grün gefärbt.

In ähnlicher Weise wird auch das dritte p, obwohl es keine direkte Unterklasse von Vater ist, grün, was darauf hinweist, dass dieser Selektor mit Leerzeichen indirekte Nachkommen enthalten kann.

Der Unterschied wurde oben klar erklärt, warum manchmal mehrere Klassenselektoren erforderlich sind, um ein Element auszuwählen
1 Die chinesische Übersetzung von CSS ist ein Cascading Style Sheet, und sein Stil basiert auf Durch Erben und Überschreiben entsteht der endgültige Stil.
2. Es gibt eine Reihe von Regeln zur Berechnung der Gewichtung von CSS-Stilen. Der Stil mit der größeren Gewichtung ist der endgültige Stil. Um den vorherigen Stil zu überschreiben, erhöhen wir daher manchmal die Gewichtung, indem wir einen Klassenselektor hinzufügen repräsentieren dieses Element

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen der Definition von CLASS in CSS mit Leerzeichen und ohne Leerzeichen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn