2009-08-13 7 views

Répondre

71

Pour obtenir la résolution de l'écran dans JS utiliser screen objet

screen.height; 
screen.width; 

Sur la base des valeurs que vous pouvez calculer votre marge à tout ce qui vous convient.

+0

J'apprends simplement Javascript; Avez-vous une chance de me montrer l'approche que vous utiliseriez pour calculer la hauteur et ajouter une certaine marge? L'identifiant du div que j'ajuste est "port-cont". –

+0

Eh bien, vous avez une hauteur d'écran donnée, vous devez soustraire quelque chose pour le menu du navigateur, la barre d'état, etc. Il est difficile de dire combien cela serait parce que cela dépend du navigateur. Ensuite, vous devriez expérimenter avec différentes tailles pour vos éléments jusqu'à ce que vous obteniez le site juste. Si je peux suggérer je ne sais pas si JS est ce que vous cherchez. Vous pouvez simplement définir la hauteur dans la feuille de style CSS à une valeur de pourcentage qui sera toujours définie correctement sans lire la résolution d'écran dans JS. – RaYell

+1

http://api.jquery.com/height/ – foxybagga

22

Voici un exemple sur la façon de centrer un objet verticalement avec jQuery:

var div= $('#div_SomeDivYouWantToAdjust'); 
div.css("top", ($(window).height() - div.height())/2 + 'px'); 

Mais vous pouvez facilement changer cela à vos besoins tout.

5

Un autre exemple pour verticalement et horizontalement centrée sur div ou tout autre objet (s):

var obj = $("#divID"); 
var halfsc = $(window).height()/2; 
var halfh = $(obj).height()/2; 

var halfscrn = screen.width/2; 
var halfobj =$(obj).width()/2; 

var goRight = halfscrn - halfobj ; 
var goBottom = halfsc - halfh; 

$(obj).css({marginLeft: goRight }).css({marginTop: goBottom }); 
2
var space = $(window).height(); 
var diff = space - HEIGHT; 
var margin = (diff > 0) ? (space - HEIGHT)/2 : 0; 
$('#container').css({'margin-top': margin}); 
Questions connexes