CSS Elevator est un projet ingénieux démontrant comment créer une machine à états interactive (un ascenseur) en CSS pur, sans JavaScript. L’auteur utilise des variables CSS personnalisées (via @property
), des compteurs, la pseudo-classe :has()
, et des transitions pour simuler le déplacement entre les étages, calculer la durée des trajets, afficher la direction, et même gérer l’accessibilité avec aria-live
. Les boutons radio servent de déclencheurs d’état, tandis que des astuces comme le délai de mise à jour des variables permettent de mémoriser l’état précédent. Le résultat est une animation fluide, réactive et accessible, prouvant que le CSS moderne peut gérer des logiques complexes, idéal pour des prototypes ou des environnements sans JavaScript.
Tout est dans le titre
Une excellente introduction aux propriétés custom CSS
Tout est dans le titre
Celle retenue par l'auteur :
.fancy-button {
--_color: var(--color, black);
border: .1em solid var(--_color);
background: transparent;
color: var(--_color);
}
.fancy-button:hover {
background: var(--_color);
color: white;
}
L'avantage c'est qu'il est possible de définir --color ailleurs... et on est certain qu'il y aura une couleur par défaut.
Tout est dans le titre
Tout est dans le titre
Quelques pièges avec les Custom Properties en CSS
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre (via https://www.creativejuiz.fr/blog/ressources-telechargements/les-ressources-du-web-44 )
Tout est dans le titre