Bandeau défilant

Bandeau horizontal à défilement continu pour annonces, actualités ou alertes. Bouton de pause obligatoire pour l’accessibilité (WCAG 2.2.2). Respecte prefers-reduced-motion.

Exemple

Ouverture du guichet unique le 1er avril 2025 Journée nationale de l’administration : 15 avril Nouveau portail e-services disponible
<div class="bj-marquee bj-marquee--bordered" data-bj-marquee>
  <div class="bj-marquee__track">
    <span class="bj-marquee__item">Annonce 1</span>
    <span class="bj-marquee__item">Annonce 2</span>
  </div>
  <button class="bj-marquee__pause" type="button">
    <i class="ri-pause-line"></i>
  </button>
</div>

Combinaisons vitesse, sens, bordures, pause

Combinez les modificateurs sur le même conteneur. La durée par défaut est pilotée par la variable CSS --bj-marquee-duration (20s) ; les classes lente / rapide la redéfinissent.

Rapide + sens inverse

Sens inverse — démonstrationVitesse rapide (10s)
<div class="bj-marquee bj-marquee--fast bj-marquee--reverse" data-bj-marquee>…</div>

Lent + inverse + bordures

Annonce institutionnelle lisible avec cadre haut/bas.

Service public — horaires d’été Contact citoyen
<div class="bj-marquee bj-marquee--slow bj-marquee--reverse bj-marquee--bordered" data-bj-marquee>…</div>

Rapide + bordures

Bandeau urgent encadré, toujours avec bouton de pause.

Alerte technique — maintenance ce soirSuivez le statut sur le portail
<div class="bj-marquee bj-marquee--fast bj-marquee--bordered" data-bj-marquee>…</div>

État figé (pausable)

Classe bj-marquee--paused fige l’animation (posée par le script au clic ou pour une capture). Le bouton bj-marquee__pause reste obligatoire pour la reprise.

Texte figé pour accessibilité ou captureDeuxième segment (non animé ici)
<div class="bj-marquee bj-marquee--paused" data-bj-marquee>
  <div class="bj-marquee__track">…</div>
  <button class="bj-marquee__pause" type="button" aria-label="Pause">…</button>
</div>

Lent (vitesse seule)

Cycle long (35s) pour lectures détailléesTexte d’exemple
<div class="bj-marquee bj-marquee--slow" data-bj-marquee>…</div>

Classes CSS

ClasseDescription
bj-marqueeConteneur principal.
data-bj-marqueeInitialisation du script sur le conteneur.
bj-marquee__trackPiste animée.
bj-marquee__itemÉlément individuel.
bj-marquee__pauseBouton pause/reprise (obligatoire).
bj-marquee--reverseDéfilement en sens inverse.
bj-marquee--slowVitesse lente (35s).
bj-marquee--fastVitesse rapide (10s).
bj-marquee--borderedBordures haut/bas.
bj-marquee--pausedÉtat pause (classe posée par le script ou à la main pour figer le défilement).
--bj-marquee-durationDurée d’un cycle ; surchargée par bj-marquee--slow (35s) et bj-marquee--fast (10s).

Accessibilité

Le bouton de pause est obligatoire (WCAG 2.2.2). Le conteneur bascule entre aria-live="off" (en mouvement) et aria-live="polite" (en pause). L’animation s’arrête automatiquement si prefers-reduced-motion: reduce est actif.