我读过大多数类似的帖子,但是都没有使用等高于行高的高度或显示:table-cell + vertical-align:middle帮助我将我的div中的数字居中放在绝对定位的位置。
感谢任何帮助。
HTML
<div id='test'>
</div>
CSS
#test {
position: relative;
width: 100px;
height: 100px;
border: 1px solid black;
}
.cell {
display: table-cell;
vertical-align: middle;
position: absolute;
width: 33.33%;
height: 33.33%;
text-align: center;
}
.cell:hover {
background-color: red;
}
的Javascript
var cell = $("<div class='cell'></div>");
var e = $('#test');
var val;
for(i=0;i<3;i++) {
for(j=0;j<3;j++) {
val = (i*3)+(j+1);
c = cell.clone();
$(e).append(c);
$(c).html(val);
$(c).css('top',(i*33.33)+'%');
$(c).css('left',(j*33.33)+'%');
$(c).data('value',val);
}
}
答案 0 :(得分:1)
您需要使line-height
等于高度(以像素为单位)。您可以使用$(height)
.css('line-height', $(c).height() + 'px');
答案 1 :(得分:0)