2013-01-10 33 views
0

CSS中心元素這是我的html:其母公司是更大的屏幕,然後

<div id="bar"> 
    <div class="container"> 
     <div class="item"></div> 
    </div> 
</div> 

#bar爲100%和溢出隱藏。

。容器是1600px,帶邊距:0自動;集中它。同樣位置:相對;

.item是960像素,我希望當我的屏幕恰好是1600像素,.item正確地集中到中心這個元素

。但是當我把它縮小時,.item會向右移動。 它看起來像計算的邊際始終是320px((1600-960)/ 2)並且是從.container相對計算的。但是瀏覽器應用相對於視口的邊距。

有沒有人知道如何讓瀏覽器應用相對於父母的邊距,當父母不可見時?

+1

將保證金:0汽車上.item無法正常工作,以及因爲寬度定義?否則,我會考慮一個JS解決方案。 –

+0

如果不知道.item的內容(和其他div,如果他們有其他內容),我就無法理解這個問題。你能否提供一個證明問題的例子? – KatieK

+1

_當我的屏幕正好是1600px時,.item居中正確。但是當它變小時,.item會向右移動._這是因爲DOM錨定在視口的左側部分,並且溢出僅延伸到右側。你爲什麼指定'1600px'? –

回答

0

我已經想出了一個在jsfiddle上的例子,但使用了更小的尺寸,因此它的可見性。添加margin: 0 auto;到.item應該修復它。

http://jsfiddle.net/EMHSs/

+0

maceyj2我改變了你是jsfiddle http://jsfiddle.net/bbxgm/。所有的96px盒子都是'網站'。在綠色框中,我有一個大的背景圖像,但我不想在屏幕小於160像素時使用滾動條;所以我把100%的紅色框和溢出隱藏起來。 – Tijnos

+0

你有沒有嘗試添加溢出:隱藏;到綠色的盒子?對, – maceyj2

+0

是的,這沒有什麼區別。當屏幕變小時,藍色框不在視口的中心了...... – Tijnos