2012-06-18 78 views
1

我有一點問題。Div水平中心沒有絕對

我有一些元素的圖像,在其他divs內的容器div。 喜歡的東西:

<div id="container"> 
    <div id="draggable"> 
     <img src="something"> 
    </div> 
</div> 

我需要verticaly中心集裝箱,但我不能使用top:-healfHeight;利潤率:50%;因爲那麼jQuery UI的拖動將無法正常工作。那麼我怎樣才能解決這個問題呢? :(

+0

計算圖像的高度,在屏幕的高度,然後將頂部的值。 –

+0

http://stackoverflow.com/questions/210717/using-jquery-to-center-a-div-on-the-screen – Johan

+1

將JS用於表示目的是錯誤的。 – mkaito

回答

1

嘗試父容器設置爲position: relative,和你想要的元素到中心來margin: auto

+0

+1這解決了我的問題,實際上我並不需要父位封裝上的'position:relative'。 – ALH

0

我不知道如何jQuery的定位工作,但如果你的答案只涉及CSS這些div的位置,那麼:

使容器div 位置:絕對; 頂部:50%; 左:50%;

那麼你的 '拖動' DIV需要這種定位: 位置:親屬; top:( - div的總高度的一半); left:( - div的寬度的一半);

例如,如果您的可拖動div是100px×100px,那麼頂部將是-50px,左側將是-50px。

+0

OP:NO絕對 – undefined

0
<div id="container"> 
    <div id="draggable"> 
     <img src="something"> 
    </div> 
</div> 

坊間確保父寬度比拖動元素寬,然後嘗試:

#draggable{display:block;margin:0 auto} 

編輯,對不起,剛剛意識到你需要它垂直居中。

嘗試:

#container{display:table-cell} 
#draggable{vertical-align:middle}