2015-09-07 31 views
1

我有以下標記:爲什麼表中沒有它的父DIV的100%

<div class="wrapper"> 
    <table> 
     <tr><td>1</td></tr> 
     <tr><td>1</td></tr> 
     <tr><td>1</td></tr> 
     <tr><td>1</td></tr> 
     <tr><td>1</td></tr> 
    </table> 
</div> 

和CSS:

.wrapper { 
    height: 60px; 
} 

table { 
    height: 100%; 
    overflow: auto; 
} 

這裏是fiddle。 問題是table沒有選擇.wrapper的高度60px。爲什麼?

回答

2

<table>默認爲display: table

做成display: block

Demo

.wrapper { 
 
    height: 60px; 
 
} 
 
table { 
 
    height: 100%; 
 
    overflow: auto; 
 
    display: block; 
 
}
<div class="wrapper"> 
 
    <table> 
 
    <tr> 
 
     <td>1</td> 
 
    </tr> 
 
    <tr> 
 
     <td>2</td> 
 
    </tr> 
 
    <tr> 
 
     <td>3</td> 
 
    </tr> 
 
    <tr> 
 
     <td>4</td> 
 
    </tr> 
 
    <tr> 
 
     <td>5</td> 
 
    </tr> 
 
    <tr> 
 
     <td>6</td> 
 
    </tr> 
 
    <tr> 
 
     <td>7</td> 
 
    </tr> 
 
    <tr> 
 
     <td>8</td> 
 
    </tr> 
 
    </table> 
 
</div>

+0

@Maximus沒有,請參閱[DEMO](http://jsfiddle.net/tusharj/0kxtb374/5/) – Tushar

+1

如果我失去了什麼,如果'display:block'就足夠了,有什麼要求'display:table'呢? –

+0

@Maximus檢查[這](http://stackoverflow.com/questions/25048236/css-displayblock-vs-displaytable),可能會幫助 – Tushar

0

你應該表格的寬度設置爲100%因爲缺省表寬度爲auto

table { 
    width: 100%; 
    height: 100%; 
    overflow: auto; 
} 

jsfiddle

閱讀more有關表格的寬度

相關問題