IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

HTML Discussion :

Hover et Active sur IE


Sujet :

HTML

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 79
    Par défaut Hover et Active sur IE
    Bonjour,

    J'ai un menu fait à partir de div sur quoi j'ai des :hover et :active qui fonctionne parfaitement sur FireFox et Chrome. Cependant, sur IE ça ne fonctionne pas. J'ai trouver sur le Web que IE supporte :hover seulement sur les balises <a>.

    J'ai trouvé aussi ceci: Whatever:hover

    J'ai fait comme ils disent en ajoutant cette ligne dans le haut de mon CSS:
    (le fichier est dans le même répertoire que mon fichier CSS)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    body
    { 
        behavior: url(csshover3.htc); 
    }
    Mais ça ne fonctionne pas... Mon VS ne reconnaît pas "behavior", je ne sais pas si c'est normal.

    Voici à quoi ressemble mon CSS:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    body
    { 
        behavior: url(csshover3.htc); 
    }
     
    .mainMenuButton img
    {
        width: 32;
        height: 32;
        vertical-align: middle;
    }
     
    .mainMenuButton
    {
        background: url('../Images/menu_button.png') no-repeat;
        height: 70px;
        width: 150px !important;
        line-height: 70px;
        overflow: hidden;
    }
     
    .mainMenuButton:hover
    {
        cursor: hand !important;
        background-position: -150px;
    }
     
    .mainMenuButton:active
    {
        cursor: hand !important;
        background-position: -300px;
    }
     
    .mainMenuButton table
    {
        margin-left: 15px;
        height: 100%;
    }
     
    .mainMenuButton span
    {
        font-size: small;
    }
    Sinon, quelle alternative je devrais utiliser?

    Merci d'avance.

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    J'ai trouver sur le Web que IE supporte :hover seulement sur les balises <a>.
    Heu... c'était vrai pour IE6... donc cette information est largement obsolète.

    Cependant, sur IE ça ne fonctionne pas.
    C'est un peu léger comme explication du problème
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 79
    Par défaut
    Citation Envoyé par Bovino Voir le message
    Heu... c'était vrai pour IE6... donc cette information est largement obsolète.


    C'est un peu léger comme explication du problème
    Quelle sont les autres balises supportant le :hover alors? Je travaille avec IE8 et le :hover ne fonctionne pas sur les div.

    Je comprends que c'est peut-être léger comme explication, mais je ne peux même pas savoir qu'est-ce qui ne fonctionne pas étant donné que c'est du CSS/HTML donc je ne peux faire de trace sur console ou autre. Lorsque je regarde mon CSS dans IE, tout à l'air être correcte, mais le :hover ne fonctionne pas.

    Pour l'instant, j'utilise du jQuery pour imiter le :hover et le :active et ça fonctionne. J'imagine que c'est la seule solution pour IE.

    Merci quand même.

  4. #4
    Membre Expert
    Avatar de Kaamo
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 165
    Par défaut
    Je comprends que c'est peut-être léger comme explication, mais je ne peux même pas savoir qu'est-ce qui ne fonctionne pas étant donné que c'est du CSS/HTML donc je ne peux faire de trace sur console ou autre. Lorsque je regarde mon CSS dans IE, tout à l'air être correcte, mais le :hover ne fonctionne pas.
    Il y a une console intégrée aux navigateurs. Par exemple, IE9 peut être mis en mode de compatibilité quirks pour émuler les comportements de ses vieilles versions.

    A la place de jquery, tu peux utiliser le script "whatever:hover", par exemple. (il a le mérite de ne faire que ça, donc si tu n'as pas autre utilité de jquery, choisis plutôt ce script. Tout se fait automatiquement) Téléchargeable ici. (+ d'infos). Une fois téléchargé, il est à placer dans le répertoire du fichier css et l'inclure dans ce dernier :
    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    body { 
    behavior: url("csshover3.htc"); 
    }

    En gros, ce p'tit script cherche tous les :hover qui ne sont supportés par IE, et les remplace. Voir le lien pour plus d'info

    A noter que le script supporte aussi les :focus et :active.

  5. #5
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Je travaille avec IE8 et le :hover ne fonctionne pas sur les div.
    Ben pourtant si !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <!DOCTYPE html>
    <html>
        <head>
    		<title>hover</title>
            <meta charset="utf-8" />
    		<style>
                            #test{
                                    background-color: silver;
                            }
                            #test:hover{
                                    background-color: gold;
                            }
                    </style>
        </head>
        <body>
    		<div id="test" style="width: 200px; height: 100px"></div>
    	</body>
    </html>
    fonctionne parfaitement, même avec IE7 !

    Ensuite, c'est peut-être dû à ta page : si elle n'est pas conforme et bascule en mode quircks, alors effectivement, le rendu sera celui d'IE5.5 et le hover pas pris en charge, mais IE n'y est pour rien si ta page a un mauvais doctype ou si elle est mal écrite
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

Discussions similaires

  1. Hover et Active sur IE
    Par joce21 dans le forum ASP.NET
    Réponses: 0
    Dernier message: 20/03/2012, 14h33
  2. Personnes actives sur le réseau
    Par apprenti doc dans le forum Langage
    Réponses: 4
    Dernier message: 30/05/2007, 15h47
  3. Voir les connexions actives sur un serveur SQL
    Par ludal dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 03/11/2006, 11h48
  4. Sessions actives sur un serveur FTP (IIS)
    Par Tuizi dans le forum Delphi
    Réponses: 1
    Dernier message: 26/06/2006, 10h40
  5. Backup de toutes les bases de donnees active sur un server
    Par Nadaa dans le forum Administration
    Réponses: 2
    Dernier message: 22/06/2006, 08h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo