28172 sujets

CSS et mise en forme, CSS3

Bonjour,

j'ai sur le site que je fais pour un ami un footer qui apparaît au scroll
ça fonctionne MAIS le footer apparaît au chargement de la page, disparaît dès que l'on scrolle et réapparaît plus loin, à l'endroit de scroll désiré
j'ai essayé plusieurs solutions/codes, mais aucune n'avait ce problème à la démo
et moi si Smiley decu
voici le lien vers le site en test : http://www.monsitepourpascher.com/careforyou/index.php

si quelqu'un a une idée ?
merciii
Administrateur
Bonjour,

Smiley eek l'élément font dans le code HTML, ça aurait dû disparaître il y a plus de 10 ans (plutôt 15) : je ne sais pas avec quoi est rédigé le contenu mais il faudrait le reprendre et utiliser des CSS pour styler celui-ci.

Concernant le footer : il est caché et affiché en réaction à l'évènement .scroll() et uniquement celui-ci : au chargement il n'y a pas encore eu scroll donc le footer reste affiché, normal.
Pour bien faire, il faudrait au chargement de la page ajouter une classe "js" sur l'élément body ou html.
Dans les CSS, cacher le footer avec le sélecteur ".js .selecteurDuFooter { display: none; }"
Au scroll, le script ajoute ou supprime directement un attribut style avec pour valeur display: none; ou block; (sûrement les instructions .hide() et .show() de jQuery) donc ça prendra le dessus sur la CSS précédente.
Avec tout ça, le footer n'est pas visible si JavaScript est activé (le cas le plus fréquent et de loin mais pas le seul...) et reste visible si pour une raison ou une autre il ne l'est pas (mauvais WiFi, connexion pourrie sur un WiFi public ou en Edge/2G, choix de l'utilisateur ce ne sont pas les situations qui manquent)
Tu m'explique ça dans ton site ?


$(function(){
    $(window).scroll(function() {              
      $('#footer').toggle($(document).scrollTop() > 800);
    });
})
Donc ton problème vient de là.
Tu lui dis d'apparaître 800px après lors du scroll.
Modifié par JENCAL (05 Apr 2016 - 12:00)
oui et il apparaît au chargement et ... ensuite disparait jusque 800px où il revient en effet
donc 'le problème vient de là' : je ne comprends pas trop ce que tu veux dire
merci
?

qu'est ce que tu ne comprend pas ? ^^

Il apparaît au chargement parce que c'est normal... il disparait parce que tu as un script qui toggle le footer lorsque que tu démarre le scoll et qui le fait réapparaître 800px après..
Smiley biggol

tu écris :
"Donc ton problème vient de là.
Tu lui dis d'apparaître 800px après lors du scroll. "

qu'est ce que le "" ?

oui je lui dit d'apparaître après 800px, c'est ce que je veux et ça fonctionne

donc d'où vient le problème qui fait qu'il apparaisse AUSSI au chargement de la page ? Smiley ohwell
ok

= $(window).scroll(function()

ton action se déclenche quand tu scroll, pas au chargement de la page. à la limite met lui un display none comme ça au chargement il sera pas présent.
Modifié par JENCAL (05 Apr 2016 - 12:14)