Styliser les légendes de vos images avec CSS 3
Lorsque l’on affiche des images sur un site, il est toujours utile d’ajouter divers informations (source, lieu…) pour le visiteur.
Mais comment ajouter une légende aux photos sans surcharger l’interface ?
Le but de cet article sera de réaliser un effet similaire à celui-ci : http://thirdroute.com/projects/captify/.
Et encore une fois, CSS 3 va nous aider à mettre en place ce que nous souhaitons, sans JavaScript.
Mise en place du document HTML
Comme à l’accoutumée, nous commençons par le code HTML.
Il s’agit d’une simple liste contenant les images <img />
et les légendes <span />
.
Pour chaque image, nous précisons si la légende sera afficher en bas (classe legend-bottom
) ou en haut (classe legend-top
).
Style de la liste
D’abord, le style de la liste.
Style de éléments
Nous mettons maintenant en place le style pour chaque élément de la liste :
Comme vous pouvez le remarquer, nous utilisons une propriété de CSS 3 pour définir la couleur d’arrière-plan.
Pour plus de détails, vous pouvez vous référer au site du W3C : http://www.w3.org/TR/2008/WD-css3-color-20080721/#rgba-color.
Nous ajoutons aussi un effet d’ombre sur le texte avec la propriété text-shadow
: http://www.w3.org/TR/css3-text/#text-shadow.
Il faut maintenant mettre en place les styles spécifiques pour les légendes du bas et du haut.
Nous définissons les positions pour les légendes ainsi que les transitions pour l’affichage.
Les informations sur la propriété transition sont regroupées sur cette page : http://www.w3.org/TR/css3-transitions/.
Vous pouvez voir le résultat sur la démo en ligne.
Démo