2013-04-10 2 views
2

Я пытаюсь центрировать по горизонтали 2 divs и выровнять эти 2 divs между ними. Проблема возникает, когда я помещаю текст разного размера в каждый div. Вот пример: http://jsfiddle.net/DgEcs/1/центр 2 divs с текстом

Почему красный div перемещается вниз и как его решить?
CSS:

.container{ 
    margin: 20px auto; 
    height: 50px; line-height: 50px; 
    text-align: center; /* to center red and blue */ 
    background: whiteSmoke; 
} 
.red{ 
    display:inline-block; /* to put it side by side */ 
    font-size: 10px; 
    background:red; 
} 
.blue{ 
    display:inline-block; /* to put it side by side */ 
    font-size: 26px; 
    background:blue; 
} 

HTML:

<div class="container" > 
    <div class="red"> aaaaaaa </div> 
    <div class="blue"> bbbbbbb </div> 
</div> 

ответ

2

Добавить vertical-align: top; в CSS обоих .red и .blue

+0

Хорошо, это работает. Вы знаете, почему это происходит? и я пробовал раньше: vertical-align: center; и это не сработало, вы понимаете, почему? – Nrc

2

Просто добавьте vertical-align:top. Кроме того, вы можете оптимизировать CSS ...

http://jsfiddle.net/DgEcs/4/

.container div { 
    vertical-align:top; 
    display:inline-block; 
} 

.red{ 
    font-size: 10px; 
    background:red; 
} 

.blue{ 
    font-size: 26px; 
    background:blue; 
} 

Теперь он должен выглядеть следующим образом: Screenshot taken from Chrome 26/OSX

+0

Хорошо, это работает. Вы знаете, почему это происходит? и я пробовал раньше: vertical-align: center; и это не сработало, вы понимаете, почему? – Nrc

+0

Ваша скрипка верна. Но когда вы оптимизируете css: 1. контейнер не центрируется по горизонтали на странице 2, красный и синий не центрируются между ними. Я не понимаю вашего ответа? – Nrc

+0

My jsfiddle использует оптимизированные стили и должен работать правильно. Какой браузер вы используете? – gearsdigital

Смежные вопросы