Bannière collante
Une bannière collante dynamique. Au défilement de la page vers le bas, la bannière du haut disparaît ; elle réapparaît lors du défilement de la page vers le haut.
Règles d’implémentation pour l’accessibilité
Les règles d’implémentation de la bannière sont celles appliquées à une zone recevant l’entête et le menu principal de la page, à savoir :
- une région
header
avec le rôle ariarole="banner"
; - une zone de navigation principale
nav
avec le rôle ariarole="navigation"
.
Visuel
Faites défiler la page vers le bas puis vers le haut et observez le comportement du bandeau supérieur contenant la navigation principale du site.
Extraits de code
Code HTML
<header role="banner" id="banner" class="noSticky">
[...]
</header>
Code CSS
header[role="banner"].sticky {
position: fixed;
top: 0;
right: 0;
left: 0;
z-index: 1030;
animation: fadein 1s;
}
@keyframes fadein {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
Code javascript
Au défilement de la page, le code javascript modifie la classe CSS da la bannière.
let lastScrollValue = 0;
document.addEventListener('scroll',() => {
let top = document.documentElement.scrollTop;
document.getElementById("banner").className = lastScrollValue < top ? "noSticky" : "sticky";
lastScrollValue = top;
});