Masquer les détails automatiquement à la fin des détails cachés

Cela se produit en raison de l’ancrage de défilement dans Chrome et Firefox (bientôt disponible dans Safari). Cette fonctionnalité permet aux navigateurs de « s’ancrer » à un élément visible, de sorte que l’insertion de contenu au-dessus de la fenêtre d’affichage ne provoque pas de changement de position de défilement.

Firefox dispose d’un mode de débogage pour cette fonctionnalité, qui peut être activé en visitant about:config et en activant layout.css.scroll-anchoring.highlight. Nous pouvons donc voir que normalement, il s’ancre à quelque chose dans le flux de publication :

Mais si vous faites défiler trop loin lorsque la chronologie est effondrée, la chronologie est alors choisie comme point d’ancrage :

Comme le dit @don, c’est parce que l’ordre des éléments dans le DOM est différent de l’ordre affiché. Il semble que l’algorithme d’ancrage de défilement parcourt le DOM dans l’ordre et choisit le premier élément entièrement visible qu’il peut trouver. Ainsi, si la chronologie effondrée est visible, elle sera toujours choisie avant le contenu de la publication.

Changer l’ordre aiderait, mais je craindrais des régressions possibles. De plus, je me demande s’il y a une raison à cet ordre (lecteurs d’écran, peut-être ?)

La solution la plus simple ici est de définir overflow-anchor: none sur la chronologie. Ensuite, elle ne sera jamais choisie pour l’ancrage :

8 « J'aime »