2013-09-02 7 views
6

divの中央に整列するdiv内に2つのspan要素があります。2つのスパン要素が垂直に整列しない

<div class="position"> 
    <span class="yours">Your current position:</span> 
    <span class="name">New York</span> 
</div> 

スタイル:あなたが見ることができるように

.position{ 
    height:70px; 
    background-color:gray; 
} 
.position span{ 
    line-height:70px; 
} 
.position .name{ 
    font-size:28px; 
} 

Live Demo

span.yoursは中央ではありません。

そして、私はスタイルを削除する場合:

.position .name{ 
    font-size:28px; 
} 

それは動作します。

問題が何ですか?

+0

私には正常に見える - が

この場合、簡単な解決策はmiddleで初期値を上書きすることです。どのブラウザで問題がありますか? – JohnFx

答えて

19

問題がすべてそうであるように、両方の子どもたちがbaselineの初期垂直アライン値を(持っているという事実にありますinline-formatting contextに参加している要素) - フォントサイズを大きくすると、.yoursはインライン兄弟のbaselineのままになります。 fiddle

.position span { 
    vertical-align: middle; 
} 
+3

私はこの答えに、実際には 'line-height'は' span'のようなインライン要素の役に立たない性質です。 – Sunyatasattva

+1

@Sunyatasattva: 'line-height'を削除した場合、' span'は真ん中にそろっていません。 – hguser

関連する問題