2013-09-02 16 views
6

div öğesinin ortasında div'un ortasında hizalamak için iki span öğem var.İki span öğesi dikey olarak hizalamıyor

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

Stil:

Live Demo

Gördüğünüz gibi

.position{ 
    height:70px; 
    background-color:gray; 
} 
.position span{ 
    line-height:70px; 
} 
.position .name{ 
    font-size:28px; 
} 
, span.yours ortada değil.

Ve stilini kaldırırsanız:

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

O çalışacaktır.

Sorun nedir?

+0

Bana iyi görünüyor -

bu durumda basit bir çözüm middle ile başlangıç ​​değeri geçersiz etmektir. Hangi tarayıcıyla ilgili sorun yaşıyorsunuz? – JohnFx

cevap

19

tüm yaptığı gibi sorunu (her iki çocuk baseline bir başlangıç ​​vertical-align değerine sahip olması yatıyor inline-formatting context'a katılan öğeler) - yazı tipi boyutunu artırırken .yours satır içi kardeşi baseline ile aynı hizada kalır. fiddle

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

Aslında 'line-height' kelimesinin' span 'gibi satır içi bir öğede işe yaramaz bir özellik olduğu bu cevabı eklemeliyim. – Sunyatasattva

+1

@Sunyatasattva: 'Satır yüksekliğini' kaldırırsam, 'span' ortada hizalanmaz. – hguser

İlgili konular