如何垂直居中表格单元格内的div?
HTML:
<tr class="rowClass">
<td class="cellClass">
<div class="divClass">Stuff</div>
</td>
</tr>
CSS:
.rowClass {
vertical-align:middle !important;
height:90px;
}
.cellClass {
vertical-align:middle !important;
height:90px;
}
.divClass {
vertical-align:middle !important;
height:90px;
}
我知道类定义是多余的,但我一直在尝试很多不同的东西。为什么解决方案(不管它是什么)不直观。我试过的“明显”解决方案都没有用。
答案 0 :(得分:16)
无需在 .divClass 中定义height
。写得像这样:
.cellClass {
vertical-align:middle;
height:90px;
border:1px solid red;
}
答案 1 :(得分:1)
我在这个问题上找到的最好的教程: How to vertically center stuff
答案 2 :(得分:0)
.divClass {
margin-top:auto;
}
<强> HTML 强>
<table border=1>
<tr class="rowClass">
<td class="cellClass">
<div class="divClass">Stuff</div>
</td>
</tr>
</table>
<强> CSS 强>
.rowClass {
vertical-align:middle !important;
height:90px;
}
.cellClass {
vertical-align:middle !important;
height:90px;
}
.divClass {
margin-top:auto;
}
答案 3 :(得分:0)
没有任何css本身你可以使用valign="middle"
尝试此代码。
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<tr>
<th height="550" align="center" valign="middle" scope="col">
<div>Hello</div>
</th>
</tr>
</table>