text-align 只应用于块级元素,它在CSS各属性里面是文本属性;
vertical-align 只应用于行内元素,它其实是CSS的定位属性;
text-align 是设置“块元素内的文本”的水平位置;
vertical-align 是设置“内联元素的基线”相对于所在行的基线的垂直位置;
因此:如果想让文本在行内垂直居中,无法使用vertical-align实现,可以采用以下方式:
p {height:50px; line-height:50px; font-size:16px; background:silver; }
<p>Hello <em>Firefox!</em></p>