2012-10-10 2 views
12

Сегодня утром я обнаружил странную проблему с CSS, и я надеюсь, что эксперты CSS помогут мне. В this demo, почему текст в красном div толкает его? Я ожидал, что два div будут рядом друг с другом. Благодаря!
EDIT: Спасибо, ребята, за ответы. Я отвечу немного. Может ли кто-нибудь объяснить, почему это происходит?Текст в встроенном блоке div, нажав на него

ответ

21

...........................

Привет в настоящее время используется для vertical-align: top;

div { 
    display: inline-block; 
    height: 50px; 
    width: 50px; 
    vertical-align: top; 
} 

Demo

+0

Можете ли вы объяснить, почему вы не использовали float: left, это чистое решение. + 1 для этого. – freebird

+1

Да, я думаю, это лучшее решение. Благодаря! :) Вы знаете, почему текст вызвал эту проблему? – Abraham

+2

, вы можете использовать для отображения встроенного блока, который означает, что inful-блок defulat является базовым, чем определить, чтобы всегда вертикально выравнивать верх, если вы определяете элемент встроенного блока дисплея в любом элементе html. –

-2

Добавление float:left решает проблему.

Working sample

+0

Я думаю, было бы интересно узнать, почему он так работает с текстом. –

+0

@TimotheeTosi Я заметил это, я не знаю, почему, не могли бы вы дать мне знать. Спасибо. – freebird

+0

"inline-block говорит браузеру о том, что этот элемент встроен, но рассматривать его так, как если бы это был элемент уровня блока." Так что вы можете плавать! http://joshnh.com/2012/02/07/why-you-should-use-inline-block-when-positioning-elements/ – BenRacicot

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