Heim > Web-Frontend > CSS-Tutorial > Können mehrere :before-Pseudoelemente auf dasselbe Element angewendet werden?

Können mehrere :before-Pseudoelemente auf dasselbe Element angewendet werden?

Susan Sarandon
Freigeben: 2024-11-17 03:40:03
Original
653 Leute haben es durchsucht

Can Multiple :before Pseudo-Elements Be Applied to the Same Element?

Mehrere :before-Pseudoelemente für dasselbe Element

Können mehrere :before-Pseudoelemente auf dasselbe HTML-Element angewendet werden?

Stellen Sie sich das folgende Szenario vor:

<p>Is it possible to have multiple :before pseudos for the same element?</p>

<pre class="brush:php;toolbar:false">.circle:before {
    content: "CF";
    font-size: 19px;
}
.now:before{
    content: "Now";
    font-size: 19px;
    color: black;
}

I am trying to apply the above styles to the same element using jQuery, but only the most recent one is applied, never both of them.

Nach dem Login kopieren

In CSS2.1 kann ein Element zu einem bestimmten Zeitpunkt nur ein Pseudoelement jedes Typs besitzen. Wenn also mehrere :before-Regeln auf dasselbe Element abzielen, werden sie kaskadiert, um ein einzelnes :before-Pseudoelement zu bilden. Im bereitgestellten Beispiel sieht das Ergebnis wie folgt aus:

.circle.now:before {
    content: "Now";
    font-size: 19px;
    color: black;
}
Nach dem Login kopieren

Die zuletzt deklarierte Inhaltsdeklaration hat Vorrang, während andere Deklarationen verworfen werden. Dieses Verhalten ähnelt dem von regulären CSS-Eigenschaften.

Um mehrere Pseudoelemente mit unterschiedlichem Inhalt auf ein Element anzuwenden, erstellen Sie zusätzliche CSS-Regeln mithilfe kombinierter Selektoren. Sie könnten beispielsweise .circle.now:before oder .now.circle:before verwenden, um auf das Element abzuzielen und den gewünschten Inhalt für jedes Pseudoelement anzugeben.

Alte CSS-Spezifikationen schlugen eine Syntax zum Einfügen mehrerer vor: :before und ::after Pseudoelemente mit einer CSS2.1-kompatiblen Kaskade. Diese Funktion wurde jedoch nicht implementiert und wird wahrscheinlich nicht in zukünftige Spezifikationen aufgenommen.

Das obige ist der detaillierte Inhalt vonKönnen mehrere :before-Pseudoelemente auf dasselbe Element angewendet werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage