28173 sujets

CSS et mise en forme, CSS3

J'ai construit mon CSS de telle façon que les boutons du menu haut, les 3 zones latérales droites et la zone basse changent d'image au passage de la souris.
Si cela fonctionne parfaitement sous Firefox, cela ne produit aucun effet sous IE7.
Que dois-je faire pour régler ce dysfonctionnement ?

Merci d'avance pour votre aide précieuse Smiley cligne


URL : http://www.escalopetour.com/Site2/
Modifié par Ouebma_ETC (26 Dec 2007 - 16:31)
Bonjour,

Internet Explorer 6 ne comprend pas la pseudo-classe :hover si elle est utilisée pour un élément autre que a.
Par contre, ça devrait marcher avec IE7, normalement. Apparemment, ça n'est pas le cas (et je ne sais pas trop pourquoi). Est-ce que ça marche sur une page avec un code minimal (juste un élément et un effet de survol en CSS)?

PS: il faudrait se débarasser du commentaire (<!-- BEGIN HEADER -->) qui précède le Doctype: IE6 passera en mode Quirks à cause de ce commentaire.
En fait, j'ai suivi tes conseils et j'ai supprimé les balises (<!-- BEGIN HEADER -->), (<!-- END HEADER -->) ... et fait la même choses sur les 2 autres fichiers tpl qui composent la structure du site.
Et là, miracle, le hover marche avec IE7 !!!
Quel est le lien de cause à effet entre les 2 choses d'après toi ?


Quoi qu'il en soit, merci (une fois de plus) pour ton aide Smiley cligne


Cela dit, le changement d'image sous IE7 est un peu Zarbi ... on dirait qu'il s'affiche une image "blanche" entre les 2 images ... qu'en penses-tu ?
Mon code CSS n'est pas bon peut être ? ... non ? Smiley confus
Modifié par Ouebma_ETC (26 Dec 2007 - 15:28)
Ouebma_ETC a écrit :
Quel est le lien de cause à effet entre les 2 choses d'après toi ?

Je sais qu'Internet Explorer 6 a un bug: le mécanisme de Doctype Switching qui lui permet de savoir s'il doit interpréter une page en mode Quirks (à l'ancienne) ou en mode Standard (en tentant de respecter les standards) ne fonctionne que si IE6 trouve en tout début de fichier HTML un Doctype en bonne et due forme, précédé par rien d'autre que des caractères blancs (retours à la ligne, espaces, tabulations). Les commentaires présents avant le Doctype déclenchent le mode Quirks.

Peut-être est-ce aussi le cas avec Internet Explorer 7.

Ouebma_ETC a écrit :
Cela dit, le changement d'image sous IE7 est un peu Zarbi ... on dirait qu'il s'affiche une image "blanche" entre les 2 images ... qu'en penses-tu ?

Ce sera le cas avec absolument tous les navigateurs. Tu appelles une seconde image qui n'est chargée que lorsque le code CSS pour l'état :hover est appliqué... c'est à dire uniquement lors du survol. Tant que l'élément n'a pas été survolé, la deuxième image de fond n'est pas chargée. Par la suite, le navigateur la mettra en cache, et l'appellera donc presque instantanément. Mais tant qu'elle n'est pas en cache, le navigateur:
- efface l'image de fond pour l'état normal;
- demande au serveur la deuxième image;
- attend la deuxième image;
- la reçoit;
- la place dans le cache;
- l'affiche en fond de l'élément.
Ces opérations pouvant prendre quelques centièmes de seconde ou bien plusieurs secondes, suivant la réactivité du navigateur, du serveur, etc.

Solution: précharger l'image, soit via Javascript, soit via une technique de type «portes coulissantes», dont voici un exemple.
Bonjour,

Florent V. a écrit :


Peut-être est-ce aussi le cas avec Internet Explorer 7.


IE7 a corrigé le bug du prologue XML qui déclenchait le mode Quirks, mais un commentaire HTML avant la DTD déclenche toujours le mode Quirks, comme dans IE6.
Modifié par Laurent Denis (26 Dec 2007 - 16:46)