28173 sujets

CSS et mise en forme, CSS3

Bonjour,

Je travaille actuellement sur un site où, je ne sais pas pourquoi, un calque:hover ne fonctionne pas sous IE (6).

Je m'explique :
J'ai un CSS externe où se trouve les propriétés de mon div : couleur de fond grise.

Dans ma page, j'ai un script php qui liste mes données, avec une incorporation d'un :

<style type="text/css">
	.id_<?php echo($exp['id']); ?>:hover { border-color:#<?php echo($exp['Couleur']); ?>; background-color:<?php echo($exp['coulKLER']); ?>; }
</style>


Qui fait en sorte que lorsque l'utilisateur passe sa souris, le fond se colore dans la couleur correspondante à la BDD. Sous Firefox, je n'ai pas de soucis, mais sous IE, le fond reste gris.

Page : http://www.reference-art.fr/index.php?page=expos/index&expo=33 (ce sont les cadres "expos" à droite)

Autre problème, j'utilise un png en niveau de gris pour ajouter un dégrader à mon fond (visible très bien sous FF), là encore, IE ne le prend pas en compte avec le hack :
filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fond_bloc_expo.png', sizingMethod='scale');


En fait, il le prend en compte pour les valeurs de gris, mais pas les valeurs de blanc comme le fait bien FF (pour éclaircir le fond en fait).

Des idées ?

Merci Smiley smile
Modifié par Const (06 Sep 2007 - 11:35)
Salut,

Pour le premier point, IE6 ne comprend pas la pseudo-classe :hover sur autre chose que les liens (balise a). Apparemment là c'est sur un div, donc ça ne fait rien.
Euh... j'ai eu le même problème, JS n'a rien donnée. Par contre si tu déclares ton lien en a {display:block;} après tu pourras lui appliquer tous les effets de :hover que tu souhaites. Le plus pénible sera en fait de déclarer par la suite les margin et les padding qui vont bien pour que ton effet se produise exactement là où il doit le faire.

Bon code. Smiley cligne
Modifié par Zzz. (07 Sep 2007 - 14:15)