【发布时间】:2011-07-19 02:31:01
【问题描述】:
我正在尝试在已知高度的 div 中垂直居中未知高度的文本。我已经尝试了 css display: table-cell 选项,但它没有用,所以我使用 jQuery 来检测高度,然后在必要时应用上边距以完成居中 - 这在需要时有效进行调整,但无法将其重新调整为上边距为零。
这是我的功能:
function change_trend(){
trend_text = $('#trends_holder img:eq(' + item_count + ')').attr('data-content');
$('.trend_text').text(trend_text);
var trendMargin = $('.trends_scroller').height() - $('.trend_text').innerHeight();
$('.trend_text').css('marginTop',trendMargin);
}
变量trendMargin 始终为0 或12。如果它是零,最初,一切都设置正确。然后,如果它是 12,它会适当地设置上边距。但是,当我到达 marginTop 为零的下一个项目时,它不会将事物弹回原来的位置。我怎样才能垂直对齐这些东西?看起来垂直居中真的不应该这么难......
【问题讨论】:
-
你能在jsFiddle上举个例子吗?
.trend_text也是块级元素吗? (div)?