2013-07-25 65 views
1

HTML:堆疊的DIV一個下面的另一垂直

<div id="container"> 
    <div id="topdiv" /> 
    <div id="maindiv" /> 
</div> 

CSS:

#topdiv { 
    height: 25%; 
    width:100%; 
    border:dashed; 
} 

#maindiv { 
    height: 75%;  
    width:100%;  
    border:solid; 
} 

無法堆疊的DIV(topdiv,maindiv)豎直地一個在另一個之下。 我在做什麼錯?

+0

您是否嘗試向CSS添加'align:left'? – Paddyd

+1

當您使用百分比作爲寬度/高度時,它基於您未定義的父元素(寬度/高度)。 – melancia

回答

2

你在做什麼錯是真正基本的東西,你自己關閉div元素標籤,因此它呈現不正確。

正確的語法

<div id="container"> 
    <div id="topdiv"></div> 
    <div id="maindiv"></div> 
</div> 

不能自行關閉div標籤

Demo

enter image description here

Click here來驗證你的HTML文檔

+0

@Paddyd我從來沒有嘗試過這樣的事情,因爲它是完全無效的... –

+0

對不起,你是對的。不能有自動關閉div。我還沒有完全醒來:P – Paddyd

0

HTML:

<div id="container"> 
    <div id="topdiv"> </div> 
    <div id="maindiv"> </div> 
</div> 

CSS:

#topdiv { 
     height: 25%; 
     width:100%; 
     border:dashed; 
    } 

    #maindiv { 
     height: 75%; 
     width:100%;  
     border:solid; 
    } 

必須關閉div標籤

0

首先,當你使用寬/高的百分比,它是基於父元素(寬/高),你沒有定義的。 二,div不是自閉標籤。

HTML

<div id="container"> 
    <div id="topdiv"></div> 
    <div id="maindiv"></div> 
</div> 

CSS

html, body, #container { 
    height: 100%; 
} 

#topdiv { 
    height: 25%; 
    width:100%; 
    border:dashed; 
} 

#maindiv { 
    height: 75%;  
    width:100%;  
    border:solid; 
} 

工作例如:http://jsfiddle.net/QJC8x/

0

如果您不會關閉div標籤,從同一個點第一個div 的下一格開始關閉分隔標籤

<div id="container"> 
    <div id="topdiv"> </div> 
    <div id="maindiv"> </div> 
</div>