[英]How to horizontally center table inside div?
我在<div>
<table>
里面有一個<table>
,下面的樣式,表沒有居中,為什么?
不應該將<div>
所有內容都格式化為我在CSS中設置的樣式嗎?
HTML
<div>
<table></table>
</div>
CSS
div{
border: 5px solid white;
border-radius: 5px;
margin: auto;
text-align: center;
}
您在div上設置margin: auto
,因此div將居中...但是您還將div保留為width: auto
因此它將與其容器一樣寬(一旦考慮了邊距,填充和邊框)。
您在div上設置text-align: center
,因此div的內聯子項將居中,但表不是內聯的,因此它不受影響(某些表格單元格內容可能是,取決於繼承) 。
如果您想使表居中,那么您必須將表本身居中。
table { margin: auto; }
div
元素是塊級的,塊級元素占據其父容器的整個空間,因此margin: auto;
默認情況下不會產生任何影響。 和text-align: center;
僅適用於內聯級別的子級,但table
不是其中之一。
您可以將table
設置為內聯表display: inline-table;
,所以包括表格在內的所有內聯子項都將以text-align: center;
在父div
。
div { border: 1px solid red; text-align: center; } table { border: 1px solid blue; display: inline-table; }
<div> <table> <tr> <td>Hello world</td> </tr> </table> </div>
只需在表格中添加保證金,如下所示。 當您對table
使用margin:auto
,它會將您的table
與div
center
align
。 而當你在這個<div>
它時,它會將它與browser
中心對齊。
table{
margin :auto;
}
而不是div,
div{
margin:auto /*No need over-here*/
}
嘗試這個:
div{
width: 80%; /* try different value for this */
margin: auto;
}
table{
margin: auto;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.