C’est encore en Candidate Recommandation (donc ni finalisé en tant que spécification, ni implémenté dans aucun navigateur), mais c’est en bonne voie : le module « Cascade » (niveau 3) de CSS vient d’ajouter à sa liste les mots-clés transversaux « unset » et « initial ». C’est-à-dire qu’on pourra « annuler » un état sur un élément !
Exemple : j’ai enlevé le padding-left par défaut des listes, par exemple parce que je veux utiliser des listes pour des menus – et que je ne veux pas avoir à enlever ce padding-left pour tous mes menus.
ul {
padding-left: 0;
}
Mais quand je suis dans un article (un texte rentré par l’utilisateur via le back-office, par exemple), je dois pouvoir lui permettre de créer des listes, et il faudrait remettre le padding-left, parce qu’il est utile dans le cas de listes imbriquées (c’est d’ailleurs probablement sa raison d’être). Donc soit je redéfinis
.user-content ul {
padding-left: 40px;
}
soit je l’annule, purement et simplement
.user-content ul {
padding-left: unset;
}
(oui, il y de meilleurs exemples, je le concède)