Maison > interface Web > tutoriel CSS > CSS peut-il implémenter une logique conditionnelle sans instructions if/else ?

CSS peut-il implémenter une logique conditionnelle sans instructions if/else ?

Linda Hamilton
Libérer: 2024-11-26 06:50:09
original
457 Les gens l'ont consulté

Can CSS Implement Conditional Logic Without if/else Statements?

Le CSS peut-il incarner une logique conditionnelle ?

Le domaine du CSS, ou feuilles de style en cascade, ne prend pas en charge nativement les conditions if/else, comme indiqué dans les langages de programmation traditionnels. Cependant, cette limitation peut être contournée grâce à diverses approches :

1. Classes CSS :

En tirant parti des classes HTML, vous pouvez créer différentes règles de style pour différents scénarios. Par exemple, le code suivant attribue des positions d'arrière-plan distinctes en fonction de la classe :

<p class="normal">Text</p>
<p class="active">Text</p>
Copier après la connexion
p.normal {
  background-position: 150px 8px;
}
p.active {
  background-position: 4px 8px;
}
Copier après la connexion

2. Préprocesseurs CSS (par exemple, Sass) :

Les préprocesseurs CSS comme Sass fournissent des instructions conditionnelles qui permettent des conditions plus complexes :

$type: monster;
p {
  @if $type == ocean {
    color: blue;
  } @else if $type == matador {
    color: red;
  } @else if $type == monster {
    color: green;
  } @else {
    color: black;
  }
}
Copier après la connexion

3. Propriétés personnalisées CSS (variables) :

Les propriétés personnalisées en CSS se comportent de la même manière que les variables et sont évaluées au moment de l'exécution :

:root {
  --main-bg-color: brown;
}

.one {
  background-color: var(--main-bg-color);
}

.two {
  background-color: black;
}
Copier après la connexion

4. Prétraitement côté serveur :

En utilisant un langage côté serveur comme PHP, vous pouvez prétraiter les fichiers CSS en fonction de valeurs dynamiques :

p {
  background-position: <?php echo (@$_GET['foo'] == 'bar')? "150" : "4"; ?>px 8px;
}
Copier après la connexion

5. Techniques CSS pour la logique de l'interface utilisateur :

Ahmad Shadeed présente de nouvelles techniques CSS pour résoudre la logique conditionnelle courante basée sur l'interface utilisateur sans utiliser if/else dans son article :
[CSS If/Else](https : //www.sitepoint.com/css-ifelse/)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal