Chargement d'images et :hover - Session 2

Introduction

À présent voyons voir comment optimiser le chargement des images et le survol sur liens.

En fait c'est extrèmement simple.
Prenons l'exemple d'un survol sur image.

Mise en place

Ajouter un paquet
...

Ici nous avons 2 images : et
Ces deux images ont les dimmensions suivantes : 16 pixels de large / 16 pixels de haut.

Nous allons créer une image de 16 pixels de large / 40 pixels de haut.

"Pourquoi 40 pixels de haut ? 16*2=32 ..."

Parce que nous gardons une "marge" autour des icônes. En effet il est à noter que les icônes actuels sont centrés en hauteur par rapport au texte. Ici nous ajoutons donc 2 pixels au dessus et en dessous de chaque icône.

2px + 16px + 2px + 2px + 16px + 2px = 40px

Et nous collons nos deux images sur cette nouvelle image. nous obtenons :

À présent nous plaçons cette nouvelle image à la place de l'ancienne.
On obtient :

Ajouter un paquet

Comme vous pouvez le voir, du fait de l'alignement vertical en CSS posé à 50%, notre image n'est pas correctement positionnée.
Il suffit donc de modifier celà en spécifiant une position verticale à : 0

Ajouter un paquet

ici vous constatez, qu'il n'y a aucun effet de survol. En effet l'image qui doit normalement s'afficher et juste en dessous de celle que vous voyez. Donc pour afficher l'effet de survol, il suffit de jouer sur le positionnement de l'image de fond, lors d'un survol. Donc il suffit d'appliquer une position verticale à : 20px

Ajouter un paquet

Nous avons notre survol, avec une seule image et une seule requête seveur :)

Vous constatez ici, qu'on a mit le positionnement vertical à 20px et la répétition à repeat-y. C'est normal, celà nous permet de faire varier l'image vers le haut ou vers le bas. Sauf que ici, en toute logique on aurait dû faire remonter l'image et donc mettre un -20px. Comme la répétition est à repeat-y (répétition infinie verticale), l'image à fait ... 'un tour' :p.

Session 3