我有一个带有五个单元格的jQuery Mobile 网格系统。我想让这些细胞的内容与细胞中间对齐。
我试图添加:
<div style="vertical-align:middle;">text</div>
但这没有用。
此外:
<div style="top:50%;">text</div>
没有工作。
我创建了一个fiddle来查看它。我有什么想法我做错了吗?
答案 0 :(得分:7)
将块显示为表 display: table;
并将内容包装在p
中的每个块中。
<div class="ui-grid-d grids">
<div class="ui-block-a">
<p>a</p>
</div>
<div class="ui-block-b">
<p>b</p>
</div>
<div class="ui-block-c">
<p>c</p>
</div>
<div class="ui-block-d">
<p>d</p>
</div>
<div class="ui-block-e">
<p><a data-role="button" class="ui-link ui-btn ui-shadow ui-corner-all" role="button">delete</a>
</p>
</div>
</div>
对于内容,将其显示为 table-cell ,display: table-cell
,将它们垂直对齐 vertical-align: middle
和水平 text-align: center
。
.grids {
border-style: solid;
border-width: 5px;
}
.grids div { /* all blocks */
display: table;
height: 153px;
}
.grids div > p {
display: table-cell;
vertical-align: middle;
text-align: center;
}
<强> Demo 强>
答案 1 :(得分:1)
使用line-height
和text-align
将文字设为中间