2009-08-13 20 views
30

私は作業しているページのバランスを取るために、画面解像度に応じてDIVの上マージンを増やす方法を探したいと思います。これらの次元をjQueryまたはJavaScriptで設定する最良の方法は何ですか?jQuery画面解像度高さ調整

答えて

71

は、JSの画面解像度がそれはあなたがあなたに合ったものは何でもあなたのマージンを計算することができた値に基づいてscreenオブジェクト

screen.height; 
screen.width; 

を使用取得します。ここで

+0

私はJavascriptを学んでいます。私にあなたが高さを計算し、それにある程度のマージンを加える方法を私に見せてもらえますか?私が調整している部門のIDは "port-cont"です。 –

+0

あなたは画面の高さを与えられているので、ブラウザーのメニュー、ステータスバーなどのために何かを引く必要があります。次に、サイトを正しく見えるようになるまで、さまざまなサイズの要素を試してみる必要があります。 JSがあなたが探しているものであるかどうかわかりません。 JSスタイルシートで高さを設定して、JSの画面解像度を読み取らずに常に適切に設定されるパーセント値に設定できます。 – RaYell

+1

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

22

はjQueryを使ってオブジェクトを垂直にセンタリングする方法の例です:

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

しかし、あなたは簡単にあなたのニーズがあるものは何でもそれを変更することができます。

5

垂直方向と水平方向中心のdivまたは任意のオブジェクト(複数可)のためのもう一つの例:

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});