在元素上使用 CSSdisplay:table-cell
时,它的父元素是否以某种方式首选/要求具有display:table-row
, 和display:table
?
这可以单独存在于文档中吗?
<div style="display:table-cell;">content</div>
或者以表格标签的方式,我应该嵌套一些具有适当样式的附加父标签吗?
<style>
.table {display:table;}
.tr {display:table-row;}
.td {display:table-cell}
}
</style>
<div class="table">
<div class="tr">
<div class="td">content</td>
</div>
</div>
使用 display:table-cell 是在同一行上布置元素的一个好技巧(特别是因为它们之间没有呈现空白)但我想知道它是否只是这样:一个技巧。我可以期望这种行为在未来的某个时候会改变吗?
这在风格上不正确吗?它似乎在所有(现代)浏览器中一致显示(IE7 及更低版本不支持display:table-cell
)
<style>
.cell {
display:table-cell;
padding:0px 5px;
background-color:#aaaaaa;
}
</style>
<div>
<span class="cell">option one</span>
<span class="cell">option two</span>
<span class="cell">option three</span>
</div>