重複していると思うかもしれませんが、画像ではなくテーブルについて話しているので、そうは思いません!
以下のコードを使用して、水平方向と垂直方向に div の中央にテーブルを設定しようとしました。コードは画像に対しては正常に機能しますが、画像の代わりにテーブルを配置すると、テーブルが表示されず、スパンサイズが 100% になり、テーブルが div の中心ではなく div の下に表示されます。
コード:
<style>
.wraptocenter {
display: table-cell;
text-align: center;
vertical-align: middle;
width:155px;
height: 160px;
background-color:#999;
display: block;
}
.wraptocenter * {
vertical-align: middle;
}
.wraptocenter span {
display: inline-block;
height: 100%;
width: 1px;
}
</style>
<!--[if lt IE 8]><style>
.wraptocenter span {
display: inline-block;
height: 100%;
}
</style><![endif]-->
<div class="wraptocenter">
<span></span>
<table border="1" width=" 70%">
<tr height="10px">
<td width="10px" height="10px"></td>
<td width="10px" height="10px"></td>
</tr>
<tr height="10px">
<td height="10px"></td>
<td height="10px"></td>
</tr>
</table>
</div>
画像を配置すると、すべてが正常に機能しますが、テーブルの場合はそうではありません!