Connaître la hauteur d'une page

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics


OTP
Modérateur
Modérateur
 
Messages: 13054
Inscription: Ven Déc 16, 2005 22:41

Connaître la hauteur d'une page

Message le Sam Jan 05, 2008 8:35

Bonjour,

Je souhaite afficher dans une colonne latérale d'une page un ou deux blocs verticaux, plutôt hauts. Je ne veux en mettre qu'un pour les pages dont la hauteur (sans bloc), est inférieure strictement à 2 hauteurs de blocs, et deux pour les cas où la page est haute d'au moins 2 blocs. J'ai donc besoin de savoir la hauteur de la page affichée, sans blocs, pour l'afficher selon les cas avec 1 ou 2 blocs. Est-ce possible de faire ça ?

Merci d'avance,

Michaël


arnaudmn
WRInaute accro
WRInaute accro
 
Messages: 1483
Inscription: Mer Mai 11, 2005 18:20

Message le Sam Jan 05, 2008 8:55

La hauteur de tes blocs va dépendre de la résolution/taille du navigateur (à moins d'avoir un site a largeur fixe).
Ma solution pour un site :
Tu mets toujours les 2 blocs, avec le 2eme en hidden.
Tu utilises le javascript pour récupérer la hauteur :
if (document.body) iHauteur = (document.body.clientHeight);
else iHauteur = (window.innerHeight);
Tu compare alors cette hauteur avec ton minimum, et si c'est supérieur, tu affiches ton 2eme bloc.


OTP
Modérateur
Modérateur
 
Messages: 13054
Inscription: Ven Déc 16, 2005 22:41

Message le Sam Jan 05, 2008 9:04

Si le javascript est désactivé, seul 1 sera affiché ?


arnaudmn
WRInaute accro
WRInaute accro
 
Messages: 1483
Inscription: Mer Mai 11, 2005 18:20

Message le Sam Jan 05, 2008 9:06

Onthisplanet a écrit:Si le javascript est désactivé, seul 1 sera affiché ?


Oui ... mais si tu penses qu'il le faut, tu l'affiche par défaut :) Ou plutot, faut voir avec la balise <noscript> pour mettre tes blocs par défaut.


OTP
Modérateur
Modérateur
 
Messages: 13054
Inscription: Ven Déc 16, 2005 22:41

Message le Sam Jan 05, 2008 13:07

Ok, je vais voir ça. Merci.


Leonick
WRInaute accro
WRInaute accro
 
Messages: 12388
Inscription: Dim Aoû 08, 2004 20:24

Message le Sam Jan 05, 2008 14:40

arnaudmn a écrit:Tu utilises le javascript pour récupérer la hauteur :
if (document.body) iHauteur = (document.body.clientHeight);
else iHauteur = (window.innerHeight);
en n'oubliant pas que si on a plusieurs barres d'outils, genre outils webmaster pour nous ou barres de recherches installées avec le navigateur pour le grand public (voir les webmasters aussi), ça réduit d'autant la hauteur utilisable


OTP
Modérateur
Modérateur
 
Messages: 13054
Inscription: Ven Déc 16, 2005 22:41

Message le Sam Jan 05, 2008 19:28

Je ne suis pas à ça près. Je veux juste éviter de trop allonger une page inutilement.


MarvinLeRouge
WRInaute impliqué
WRInaute impliqué
 
Messages: 451
Inscription: Mer Sep 01, 2004 20:10

Message le Sam Jan 05, 2008 20:28

Salut,

Sauf erreur de ma part, il y a une erreur dans ce raisonnement : si le bloc est présent, même en hidden, sa taille influera sur la hauteur de la page. Pour que ce ne soit pas le cas, il faudrait le mettre en display none.

arnaudmn a écrit:La hauteur de tes blocs va dépendre de la résolution/taille du navigateur (à moins d'avoir un site a largeur fixe).
Ma solution pour un site :
Tu mets toujours les 2 blocs, avec le 2eme en hidden.
Tu utilises le javascript pour récupérer la hauteur :
if (document.body) iHauteur = (document.body.clientHeight);
else iHauteur = (window.innerHeight);
Tu compare alors cette hauteur avec ton minimum, et si c'est supérieur, tu affiches ton 2eme bloc.


arnaudmn
WRInaute accro
WRInaute accro
 
Messages: 1483
Inscription: Mer Mai 11, 2005 18:20

Message le Dim Jan 06, 2008 8:57

MarvinLeRouge a écrit:Sauf erreur de ma part, il y a une erreur dans ce raisonnement : si le bloc est présent, même en hidden, sa taille influera sur la hauteur de la page. Pour que ce ne soit pas le cas, il faudrait le mettre en display none.


Tout le monde avait compris .... :-)


e-kiwi
Modérateur
Modérateur
 
Messages: 13870
Inscription: Mar Déc 23, 2003 9:04

Message le Dim Jan 06, 2008 9:11

euh, cela ne va pas donner la hauteur de la page si il y a barre déroulante, juste la hauteur de la page affichée qui rentre sur l'écran ca, non ?


arnaudmn
WRInaute accro
WRInaute accro
 
Messages: 1483
Inscription: Mer Mai 11, 2005 18:20

Message le Dim Jan 06, 2008 9:35

e-kiwi a écrit:euh, cela ne va pas donner la hauteur de la page si il y a barre déroulante, juste la hauteur de la page affichée qui rentre sur l'écran ca, non ?


Comme souvent avec le javascript, tout dépend de ce qu'on met dans le doctype.
Voir http://www.quirksmode.org/js/doctypes.html ; et voir l'exemple qui est fourni avec et sans doctype.


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :

  • Test du code HTTP d'une page
    Cet outil vous permet de connaître le code HTTP renvoyé par le serveur pour une page donnée.
  • Ancienneté d'un site dans Google
    Cet outil vous permet de connaître une estimation de l'ancienneté d'un site : il fournit la date à laquelle Google l'a indexé la première fois (et la même chose pour archive.org).


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités