除了IE7,我可以在所有浏览器中使用它。
<span class="verticalMiddle"></span>
<span class="jArrow inlineWrapper"></span>
<h2 class="inlineWrapper">What is depression?</h2>
.inlineWrapper {
width: 606px;
margin-left: 10px;
vertical-align: middle;
display: inline-block;
}
.verticalMiddle {
vertical-align: middle;
height: 50px;
width: 0;
display: inline-block;
}
.jArrow {
background: url(http://www.healthquestlongbeach.com/images/library/faq/arrow.png) no-repeat left top;
height: 20px;
width: 22px;
}
h2.inlineWrapper {
width: 563px;
margin-right: 13px;
}
小提琴: http://jsfiddle.net/RfRrG/5/
问题在于h2
被推下来购买.verticalMiddle {height: 50px;}
,但出于某种原因仅在IE7中出现(但由于某些奇怪的原因而不是.jArrow
)。
我可以通过添加
解决此问题.inlineWrapper {display:inline;}
但是它在其他浏览器中打破了它。为什么文本会被压低,如何正确对齐?
答案 0 :(得分:2)
display: inline-block
仅适用于自然内联的元素。
幸运的是,有一个简单的解决方法。替换这个:
display: inline-block;
用这个:
display: inline-block;
*display: inline;
在大多数情况下,您还必须add zoom: 1
,但在您的情况下不需要。
*
是"safe hack",仅在IE7及更低版本中应用该属性。