<div id="content">ABC<div>UUU</div></div>
我只想找到一些方法在div#content
中间垂直对齐。其实我有一些解决方案。第一个是使用line-height
,但如果div
中有另一个div#content
则无法使用vertical-align:middle
。并{{1}}我认为只适用于桌子?还有其他可用的解决方案吗?
我尝试了vertical-align:middle和display:table-cell,另一个问题来了, 宽度不能工作,我给那个div一个很大的宽度,可以填满屏幕(1438px),但现在宽度也是那个数字,但只是填写屏幕的1/3宽度。 表格单元格似乎在制作屏幕中的每个单元格,但我只想为表格单元格指定它们。
答案 0 :(得分:4)
将此用于您的要求
#content {display:table-cell; vertical-align:middle}
答案 1 :(得分:1)
在您的元素上声明display:table-cell
时,垂直对齐将起作用。
#content {
display:table-cell;
vertical-align:middle
}
答案 2 :(得分:0)
答案 3 :(得分:0)
使用display:table-cell;vertical-align:middle
解释其他答案...表格单元格不能有100%宽度,但它们的容器可以!
带有表格显示的项目接受动态宽度:
#existingContainer {
display: table;
width: 100%;
}
#content {
display: table-cell;
vertical-align: middle;
height: 100px; /* example */
}
说,使用示例HTML:
<div id="existingContainer">
...
<div id="content">ABC<div>UUU</div></div>
...
</div>
或者,将表格单元格直接放入块元素中将确保没有内联元素位于其旁边:
<div id="newContainer">
<div id="content">ABC<div>UUU</div></div>
</div>
使用示例CSS:
#newContainer {
display: block;
}
#content {
display: table-cell;
vertical-align: middle;
height: 100px; /* example */
}