Galerie✨ Premium

Smooth Ken Burns

Votre photo avance et glisse lentement dans son cadre, en boucle de 15 secondes ; le survol ou le bouton pause l'arrête, et elle reste immobile pour qui réduit les animations.

CSSAnimation

Mis à jour le

Cet effet fait partie d'Effect.Labs — 840 effets vanilla, une partie gratuite, une partie premium. Galerie comprend 44 effets, dont 6 gratuits. Découvrir la catégorie →

3 exemples d'usage

Fond d'en-tête d'un gîte — la vallée avance doucement — Smooth Ken Burns exemple 1

① Fond d'en-tête d'un gîte — la vallée avance doucement

QuandSur la page du Gîte du Val d'Orbéric, la photo de la vallée couvre tout l'en-tête ; le nom du lieu, la capacité et le bouton « Voir les disponibilités » sont posés en bas à gauche sur un dégradé sombre, le bouton pause en bas à droite.
PourquoiUn mouvement lent donne de la profondeur au paysage sans voler l'attention au titre ; un cycle de 8 s reste calme mais se remarque dès l'arrivée sur la page.
RéglagesRacine en position: absolute; inset: 0, --kbu-width: 100%, --kbu-ratio: 540/360, --kbu-radius: 0, --kbu-duration: 8s ; badge et légende retirés du HTML ; pointer-events: none sur le cadre (le bouton le garde) pour que la souris n'arrête pas un fond.
Escapade de la semaine dans l'appli d'une compagnie de trains régionaux — Smooth Ken Burns exemple 2

② Escapade de la semaine dans l'appli d'une compagnie de trains régionaux

QuandSur l'accueil de l'appli Sonnevrel, la vignette carrée de Lusterel, son phare et son vieux port, bouge doucement à côté du temps de trajet, du prix et du bouton « Voir les trains », au-dessus de la liste des autres idées de week-end.
PourquoiDans une liste d'offres fixes, une seule photo qui bouge désigne la mise en avant sans bandeau ni badge ; à cette taille, un cycle de 6 s reste discret.
Réglages--kbu-width: 124px, --kbu-ratio: 1, --kbu-radius: 12px, --kbu-duration: 6s, bouton pause réduit à 24 px ; badge et légende retirés.
Photo d'archive de la page « Notre histoire » d'une brasserie — Smooth Ken Burns exemple 3

③ Photo d'archive de la page « Notre histoire » d'une brasserie

QuandAu centre de la page de la Brasserie Morvellon, la façade de 1912 en sépia avance lentement entre la frise des dates (1898, 1912) et la citation du fondateur, au-dessus du bouton « Réserver une visite ».
PourquoiLe lent travelling est le geste des documentaires historiques : il fait vivre une photo d'archive unique sans la retoucher.
Réglages--kbu-width: 180px, --kbu-ratio: 15/11, --kbu-radius: 2px, --kbu-duration: 10s ; badge et légende retirés.

Comment ça marche

L'animation CSS kbu-drift s'applique à l'<img class="kbu-image"> : en --kbu-duration (15 s), l'image passe par quatre cadrages (agrandie de 1 à 1,25, décalée de quelques pour cent) puis revient au départ, avec un ease-in-out qui évite les à-coups. Le cadre coupe ce qui dépasse. Aucun script ne fait bouger l'image.

Un petit bouton rond en bas à droite (.kbu-toggle) met l'animation en pause et la relance ; c'est le seul rôle du JavaScript, qui câble chaque racine à part. Le survol de l'image met aussi en pause, comme dans la version d'origine, et le badge « Auto-animating » signale le mouvement.

Le cadre s'adapte à la largeur disponible jusqu'à --kbu-width et garde --kbu-ratio. Pour un fond plein écran, posez la racine en position: absolute; inset: 0 et mettez --kbu-width: 100%.

Accessibilité

  • Pause : le bouton est un vrai <button> nommé « Mettre l'animation en pause » ; aria-pressed="true" indique que l'image est arrêtée. Un mouvement qui dure plus de cinq secondes doit pouvoir être arrêté (WCAG 2.2.2) : c'est son rôle.
  • Mouvement réduit : sous prefers-reduced-motion: reduce, l'animation est retirée, l'image reste à son cadrage de départ, et le badge et le bouton disparaissent puisqu'il n'y a plus rien à arrêter.
  • Lecteurs d'écran : l'image garde son texte alternatif ; la légende est masquée. Le badge reste lisible : retirez-le s'il n'apporte rien dans votre page.
  • Survol : la souris arrête l'image tant qu'elle est dessus ; le bouton, lui, l'arrête durablement, même quand la souris s'en va.

Compatibilité navigateur

Animation CSS, aspect-ratio et moins de 1 Ko de JavaScript pour le bouton, sans dépendance. Mesuré dans Chromium 151, Firefox 153 et WebKit 26.5 : deux copies dont la 2e mise en pause seule, script collé deux fois sans erreur, bouton au clavier, mouvement réduit (aucune animation), aucun débordement à 390 px.

Chrome 88+✓ Complet (mesuré)
Firefox 89+✓ Complet (mesuré)
Safari 15+✓ Complet (moteur WebKit mesuré)
Edge 88+✓ Complet (moteur Chromium)
Mobile iOS 15+✓ Complet (moteur WebKit mesuré)
Android Chrome 88+✓ Complet (moteur Chromium)

Sans JavaScript, l'animation tourne et s'arrête au survol, mais le bouton ne fait rien : cachez-le dans ce cas. Sans aspect-ratio, le cadre prend la hauteur de l'image.

Le code

Structure HTML à coller dans votre page (le CSS + JS sont inclus avec votre achat) :

index.html — structure
<div class="fx-0186-root">
  <div class="kbu-frame">
    <img class="kbu-image" src="votre-photo.jpg" alt="Description de la photo">
    <span class="kbu-label" aria-hidden="true">Ken Burns</span>
    <span class="kbu-badge">Auto-animating</span>
    <button type="button" class="kbu-toggle" aria-pressed="false" aria-label="Mettre l'animation en pause"></button>
  </div>
</div>

Paiement unique, sans abonnement — le code est à toi pour toujours

Personnaliser

Options passées à l'API ou attributs data-* :

Option / propriétéDéfautEffet
Image (HTML — src de .kbu-image) motif violet quadrillé (SVG intégré) Votre photo et son alt. L'image monte jusqu'à 125 % : un fichier 1,3 fois plus large que le cadre reste net.
--kbu-duration 15s Durée d'un cycle complet ; 8s pour un mouvement visible, 25s pour un fond presque immobile.
--kbu-width · --kbu-ratio · --kbu-radius 280px · 7 / 5 · 0.75rem Largeur maximale, proportions et arrondi du cadre.
Cadrages (@keyframes kbu-drift) 1 → 1,2 → 1,15 → 1,25 Modifiez les scale() et translate() des étapes 25 %, 50 % et 75 % pour viser une autre partie de la photo.
Badge .kbu-badge · légende .kbu-label « Auto-animating » · « Ken Burns » Éléments facultatifs : supprimez les <span> sur une vraie photo.
Pause au survol active Pour un fond, ajoutez pointer-events: none au cadre et pointer-events: auto au bouton : seule la pause par le bouton reste.

FAQ

Un mouvement automatique de plus de cinq secondes doit pouvoir être arrêté par la personne qui lit (règle WCAG 2.2.2). Le survol ne suffit pas : il n'existe ni au clavier ni au doigt.
La photo immobile, à son cadrage de départ, sans badge ni bouton. Le contenu reste entier ; seul le mouvement disparaît.
Pas dans cet effet : il anime une seule image. Pour faire défiler plusieurs photos, associez-le à un carrousel et mettez une racine par diapositive.