On connaissait les “CSS Carousels”. Voilà le pendant qui m’intéresse vraiment : un scrollspy lisible et accessible, sans JavaScript. L’idée : garder une table des matières sémantique (une liste de liens vers les sections), activer scroll-target-group sur le conteneur, puis utiliser :target-current pour styler le lien dont la section est visible. Résultat : un état actif natif, pas de classes à bidouiller, et moins de code à maintenir.
Ce que j’aime : on n’invente rien côté HTML. Le <nav> reste un vrai <nav>. Les liens, de vrais liens. Le comportement “actif” vient de CSS et du navigateur. C’est propre, ça respecte l’accessibilité de base, et ça colle à l’intention : guider la lecture, pas jouer au carrousel.
Nuance utile : c’est neuf, support encore partiel, donc à prototyper avant de livrer en prod. Mais la direction est bonne. On remplace une logique JS souvent fragile par une API CSS pensée pour ça. Et ça, c’est le genre d’évolution qui rend le front agréable : moins de friction, plus de sémantique, meilleur UX par défaut