Heim > Web-Frontend > CSS-Tutorial > Wie können Sie bedingtes Styling in CSS erreichen?

Wie können Sie bedingtes Styling in CSS erreichen?

Susan Sarandon
Freigeben: 2024-11-09 11:54:02
Original
717 Leute haben es durchsucht

How Can You Achieve Conditional Styling in CSS?

Bedingtes Styling in CSS: Alternativen erkunden

Traditionell werden if/else-Bedingungen in CSS nicht nativ unterstützt. Es gibt jedoch verschiedene Ansätze, um einen bedingten Stil zu erreichen.

CSS-Klassen

Eine Methode besteht darin, CSS-Klassen zu verwenden, um verschiedene Stile für verschiedene Bedingungen zu definieren. Sie könnten beispielsweise zwei Klassen erstellen:

<p class="normal">Text</p>
<p class="active">Text</p>
Nach dem Login kopieren

Und in Ihrer CSS-Datei:

p.normal {
  background-position: 150px 8px;
}
p.active {
  background-position: 4px 8px;
}
Nach dem Login kopieren

Dieser Ansatz wird weithin unterstützt und ermöglicht die Laufzeitauswertung von Bedingungen.

CSS-Präprozessoren

CSS-Präprozessoren wie Sass stellen bedingte Anweisungen bereit, mit denen Sie Code schreiben können wie:

$type: monster;
p {
  @if $type == ocean {
    color: blue;
  } @else if $type == matador {
    color: red;
  } @else if $type == monster {
    color: green;
  } @else {
    color: black;
  }
}
Nach dem Login kopieren

Dies bietet zwar mehr Flexibilität, erfordert jedoch eine Vorverarbeitung, die sich auf die Leistung auswirken kann.

Benutzerdefinierte Eigenschaften (CSS-Variablen)

Benutzerdefinierte Eigenschaften, unterstützt ermöglichen in modernen Browsern die Laufzeitauswertung von Bedingungen. Sie könnten eine benutzerdefinierte Eigenschaft definieren wie:

:root {
  --main-bg-color: brown;
}
Nach dem Login kopieren

Und sie dann in Ihrem CSS verwenden:

.one {
  background-color: var(--main-bg-color);
}
.two {
  background-color: black;
}
Nach dem Login kopieren

Serverseitige Vorverarbeitung

Serverseitige Präprozessoren können generieren bedingtes CSS basierend auf dynamischen Werten. Sie könnten beispielsweise Code wie folgt schreiben:

p {
  background-position: <?php echo (@$_GET['foo'] == 'bar')? "150" : "4"; ?>px 8px;
}
Nach dem Login kopieren

Dieser Ansatz kann jedoch Auswirkungen auf die Leistung haben, da serverseitiges Rendering erforderlich ist.

Reine CSS-Techniken

Schließlich demonstriert der Artikel von Ahmad Shadeed verschiedene reine CSS-Techniken zur Bewältigung bedingter UI-Szenarien, ohne auf externe Mechanismen angewiesen zu sein.

Das obige ist der detaillierte Inhalt vonWie können Sie bedingtes Styling in CSS erreichen?. 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