2016-04-04 24 views
0

yaşıyorum konulara sonraki hizalanmamıştır: https://jsfiddle.net/xfpfjqw0/Div O zaman bununla diğer

header .logo { 
 
    display: inline-block; 
 
    height: 150px; 
 
    width: 40%; 
 
} 
 
header .search { 
 
    display: inline-block; 
 
    height: 150px; 
 
    width: 40%; 
 
}
<header> 
 
    <div class="logo"></div> 
 
    <div class="search"> 
 
    <form action="/search/" method="get"> 
 
     <input type="text" name="q"> 
 
     <input type="submit" value="Search" class="btn"> 
 
    </form> 
 
    </div> 
 
</header>

Ben inşa ediyorum bir web sitesinden bir alıntı. Eğer iki unsuru incelerseniz, ilkinin ilk soldan başlayıp ikincisinin sağ alt köşesinde başladığını göreceksiniz.

Bu neden oluyor?

cevap

0

Hizalamayı değiştirmek için öğenin vertical-align değerini belirtmeniz gerekir. Varsayılan değer baseline ama bottom

Like this

bu burada daha büyük bir açıklamasına bakın, örneğin top, middle için gibi değiştirebilirsiniz: Why is this inline-block element pushed downward?

+0

'dikey align' varsayılan olduğunu 'taban çizgisi', aslında kutuların zaten bir "dikey hizalaması" vardır ve "dikey hizalama: temel" kelimesinin eklenmesi sorunu çözmez. Öyleyse neden başlangıç ​​çizgisinden başka bir değer belirtmelisiniz? Bahsetmediğiniz belirli bir sebep var, ama neyse ki yinelenen sorunun cevabı * tüm bilgiyi, içeriği ve edebiyatı sağlıyor. – GolezTrol

+0

Doğru, cevabımda açık değildi. Ama varsayılan değerin "temel" olduğunu belirledim. Bunu varsayılan değerini değiştirmek için belirtebilirsiniz, demek istediğim buydu. –