我读过大多数类似的帖子,但是使用 line-height 等于 height 或 display: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);
}
}
链接:http: //jsfiddle.net/wB7Mk/1/