我正在使用代码将多行文本垂直居中。它在所有现代浏览器中都可以正常工作,但在IE7中无法正常工作。我在CSS-Tricks上搜索到一个CSS表达式,应该可以解决这个问题。
不幸的是,在IE7中,元素的高度不是107px
,它似乎更大。我刚刚了解到CSS表达式,并且对此知之甚少。
请问有人能指出问题并提供解决方案吗?
CSS
p.caption {
display: table-cell;
height: 107px;
padding: 15px 10px;
border-bottom: 1px solid #cecece;
font-size: 16px;
text-shadow: 0 0 1px #868686;
text-align: center;
vertical-align: middle;
}
IE7 CSS
p.caption {
clear: expression(
style.marginTop = "" + (offsetHeight < parentNode.offsetHeight ? parseInt((parentNode.offsetHeight - offsetHeight) / 2) + "px" : "0"),
style.clear = "none", 0
);
}
实时演示: JSFiddle
我认为JSFiddle不支持IE表达式?