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

Mise en page CSS Discussion :

Effet transition CSS3 sur background appelé via événement [CSS 3]


Sujet :

CSS

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    253
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 253
    Par défaut Effet transition CSS3 sur background appelé via événement
    Bonjour,

    J'ai 4 images, et 1 background appelé en javascript sur un évènement Onmouseover sur chacune des images qui appelle un bakcground différent.
    J'aimerais savoir comment faire apparaitre ces backgrounds en fondu, effet de transition en FADE ou peut importe.. une transition SVP.

    Voici mon code javascript :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function changeBgImage( Class )
    {
        document.body.className = Class;
    }
    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
    44
    45
    46
    47
    48
    49
    50
    51
     
    .LoisirsBG:hover
    {
      background-image:url(<?php echo PATH_IMG_STATIC; ?>menu/body/background.jpg);
      background-repeat:repeat-x;
      -webkit-background-size:100% 100%;
      -moz-background-size:100% 100%;
      -o-background-size:100% 100%;
      background-size:100% 100%;
      background-color:#bbbbbb;
    }
    .OsmozBG:hover
    {
      background-image:url(<?php echo PATH_IMG_STATIC; ?>menu/body/background_osmoz.jpg);
      background-repeat:repeat-x;
      -webkit-background-size:100% 100%;
      -moz-background-size:100% 100%;
      -o-background-size:100% 100%;
      background-size:100% 100%;
      background-color:#ecd48c;
    }
    .VirtualBG:hover
    {
      background-image:url(<?php echo PATH_IMG_STATIC; ?>menu/body/background_virtual.jpg);
      background-repeat:repeat-x;
      -webkit-background-size:100% 100%;
      -moz-background-size:100% 100%;
      -o-background-size:100% 100%;
      background-size:100% 100%;
      background-color:#000000;
    }
    .GpuBG:hover
    {
      background-image:url(<?php echo PATH_IMG_STATIC; ?>menu/body/background_gpu.jpg);
      background-repeat:repeat-x;
      -webkit-background-size:100% 100%;
      -moz-background-size:100% 100%;
      -o-background-size:100% 100%;
      background-size:100% 100%;
      background-color:#424244;
    }
    .BodyBG
    {
      background-color:#01042f;
      background-image:url(<?php echo PATH_IMG_STATIC; ?>homepage/background_home.jpg);
      background-repeat:no-repeat;
    }
    .PagingIE9
    {
      float:left;
    }
    Et enfin mon HTML :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <div  style="width:100%;">
      <div class="PagingIE9"><a href="#"><img src="img1.jpg" onmouseover="changeBgImage('VirtualBG');" onmouseout="changeBgImage('BodyBG');" /></a></div>
      <div class="PagingIE9"><a href="#"><img src="img2.jpg" onmouseover="changeBgImage('OsmozBG');" onmouseout="changeBgImage('BodyBG');" /></a></div>
      <div class="PagingIE9"><a href="#"><img src="img3.jpg" onmouseover="changeBgImage('LoisirsBG');" onmouseout="changeBgImage('BodyBG');" /></a></div>
      <div class="PagingIE9"><a href="#"><img src="img4.jpg" onmouseover="changeBgImage('GpuBG');" onmouseout="changeBgImage('BodyBG');" /></a></div>
    </div>
    Pouvez-vous m'aider SVP ? Je trouve ça super affreux sans effet de transition, ça agresse trop avec les différentes couleurs des différents fonds.

    En vous remerciant, Bonne après midi

    Ju'

  2. #2
    Membre extrêmement actif
    Avatar de Muchos
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    1 704
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 704
    Billets dans le blog
    6

  3. #3
    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
    Il n'y a pas de transition possible (sauf erreur de ma part...) pour les images de fond.
    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

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    253
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 253
    Par défaut
    Bonjour et merci de vos réponses,

    Sil ça doit bien exister, car j'ai trouvé un petit exemple sur ce lien :
    http://www.materiel.net/

    Et la propriété "transition-property" ou bien "-ms-transition-property" en CSS3 n'est pas compatible IE9. IE9 (mis à jour) est justement mon problème principal...

    C'est pour ça que je vous pose la question s'il existe une autre alternative pour faire cet effet de transition comme materiel.net par exemple.

    Merci

  5. #5
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    materiel.net fait ça avec jquery, pas avec css. Et jquery fait ça en modifiant l'opacité tous les x millisecondes, il n'utilise pas les propriétés css de transition.

    L'astuce est d'avoir un div qui fait chaque fond disponible, et de n'en avoir qu'un seul visible à la fois. Et faire des transitions de fondu jquery au passage de l'un à l'autre.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    253
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 253
    Par défaut
    Et penses-tu qu'il est possible d'adapter ça directement sur le background du BODY ?

  7. #7
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Non, il n'existe qu'une seule background-image sur le body, et à ma connaissance il n'y a pas moyen de régler l'opacité de juste cette image. Or, l'astuce consiste à afficher deux images l'une sur l'autre et à varier leurs opacités.

    Par contre, rien ne t'empêche de faire plein de <div> en position absolue, taille 100%, donc qui occupent toute la page, z-index très négatif donc affiché en-dessous de tout, et qui ont chacune un des backgrounds demandés. C'est grosso-modo ce que fait le site en question.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Invité de passage
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2013
    Messages : 1
    Par défaut
    ju0123456789 as-tu toujours besoin de la réponse ? Si oui, je crois que je peux t'aider.

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    253
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 253
    Par défaut
    Bonjour !

    Merci c'est gentil mais c'est bon, avec les conseils qu'on ma donnés ci-dessus j'ai réussi a pondre quelque chose de sympa =)

    Bonne journée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. effet d'ombre sur un tableau
    Par jani dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 10/11/2005, 10h16
  2. Réponses: 6
    Dernier message: 09/11/2005, 17h29
  3. faire un effet de transparence sur un bloc div ?
    Par piff62 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 08/03/2005, 00h04
  4. Connexion sur une base via BDE (pb de User Name)
    Par Sharky21 dans le forum Bases de données
    Réponses: 2
    Dernier message: 28/12/2004, 10h31
  5. Alimenter le context sur un appel Javascript ?...
    Par Sylvain James dans le forum XMLRAD
    Réponses: 2
    Dernier message: 20/10/2003, 15h44

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