Bonjour,
Le choix qu'ils ont fait est d'utiliser du Javascript.
Avec 3 images :
une image de base,
une image au survol et
une image activée.
Il a donc fallu qu'ils créent les 3 images. Les effets sont donc obtenu grâce à Javascript.
Lors du chargement, la page contient ce code :
<td colspan=3><a href="../tour/accueil.php?lg=fr">
<img src="../image/local/fr/menu_accueil_off.jpg" alt="Accueil" name="accueil"
onMouseOver=accueil.src="../image/local/fr/menu_accueil_over.jpg"
onMouseOut=accueil.src="../image/local/fr/menu_accueil_off.jpg" width=270 height=65 border="0"></a></td>Au chargement de la page, l'image de base est affichée (menu_accueil_off.jpg).
Lorsqu'on ammène la souris sur l'image
onMouseOver une autre image s'affiche (menu_accueil_over.jpg).
Lorsqu'on enlève la souris de l'image
onMouseOut, l'image de base s'affiche à nouveau (menu_accueil_off.jpg).
Le code devient
<td colspan=3><a href="../tour/accueil.php?lg=fr">
<img src="../image/local/fr/menu_accueil_on.jpg" alt="Accueil" name="accueil"
onMouseOver=accueil.src="../image/local/fr/menu_accueil_on.jpg"
onMouseOut=accueil.src="../image/local/fr/menu_accueil_on.jpg" width=270 height=65 border="0"></a></td>lorsqu'on accède à la nouvelle page après avoir cliqué sur un élément du menu.
Là, l'image activée est la seule que est affichée (menu_accueil_on.jpg).
Ce qui permet de voir dans quelle page on se trouve, mais qui oblige à prévoir une nouvelle apparence au menu dans chaque nouvelle page.
Le PHP les a certainement beaucoup aidé à le faire.
On peut obtenir le même effet avec des CSS, en évitant que ça ne fonctionne pas dans les navigateurs ayant leur gestion du Javascript désactivée.
Par exemple, en créant une image contenant les 3 états de l'image et en décalant les parties de cette image en fonction de ce que fait la souris (a:hover, a:active).
Le a:active ajoute un effet. Lorsqu'on clique sur le lien, ça affiche l'image qu'on retrouve dans la nouvelle page.
Les 2 manières de faire sont assez simple à mettre en œuvre.
Le Javascript n'est pas obligatoire, le css suffit, il faut créer des divs ayant pour image de fond (dans le css) normal.jpg au survol survol.jpg et au clic actif.jpg comme ceci :
div#menu a { background-image: url('normal.jpg'); } div#menu a:hover { background-image: url('survol.jpg'); } div#menu a:active { background-image: url('actif.jpg'); }Comme ça même les visiteurs ayant désactiver Javascript pourront bénéficier de tes graphismes ;)