2012-10-08 77 views
-4

有兩個問題。顯示其中沒有任何內容的div?

  1. 首先,如果沒有高度的div的設置,並沒有包含在其內部元件 ,會不會他們顯示呢?

  2. 其次,根據第一個問題,如果我想顯示 DIV是身高的90%和橫向和 垂直居中,即使它裏面沒有內容,是什麼 css必需?

+2

試試吧!測試這個問題比輸入問題要快得多! –

回答

0

要完全居中一個div(或任何塊元素),你應該在緣陰性組合使用絕對定位。看看這裏:enter link description here。嘗試調整窗口大小:它的定位是自動發生的。

div { 
    width: 90%; /* Can be a non-percentual number */ 
    margin-left: -45%; /* negative value of element's width/2 | Can be a non-percentual number */ 
    margin-top: -45%; /* negative value of element's height/2 | Can be a non-percentual number */ 
    height: 90%; /* Can be a non-percentual number */ 
    position: absolute; 
    top: 50%; /* must always be 50% */ 
    left: 50%; /* must always be 50% */ 
    border: 1px solid; 
}​ 

當然,當你只使用按百分比值,它是容易只是做數學題:50% - 45%= 5%(澤塔的帖子建議),但我用這個方法來表明該與非百分比值一起工作。 Example

div { 
    width: 320px; 
    margin-left: -160px; /* negative value of element's width/2 */ 
    margin-top: -120px; /* negative value of element's height/2 */ 
    height: 240px; 
    position: absolute; 
    top: 50%; /* must always be 50% */ 
    left: 50%; /* must always be 50% */ 
    border: 1px solid; 
}​ 

當一個元素沒有特定的高度,並且它沒有內容時,你將不會看到它,不。它會有一個自動寬度(通常是100%),但沒有高度。您可以通過添加邊框使其可見:http://jsfiddle.net/TALAA/2/

+0

@Zeta我很清楚我在做什麼。他們有什麼問題?當給出非百分比寬度時,這是整個網絡中橫向和縱向居中放置元素的最好方法。我在這裏使用了負邊距和上邊/左邊的值來清楚說明,您也可以將它用於非百分比值。 (你的解決方案無法做到這一點)。 –

+0

我發佈後幾乎立即刪除了我的評論,並在我意識到自己的錯誤之後刪除了downvote。我要去喝杯咖啡來預防這種事情。然而,我仍然認爲在這個非常具體的例子中,「頂部:5%;底部:5%」並且沒有「保證金頂部」對於垂直位置是足夠的。 – Zeta

+0

@Zeta當然,但是SO是一個學習的地方,而不是複製和粘貼。所以我認爲最好清楚說明所做的一切,而不是僅僅說:這就是解決方案,玩得開心。但是當他試圖用像素值做到這一點時,他會陷入困境。但是,嘿,沒有難過的感覺。 –

相關問題