- inline-block
- При этом значении свойства
displayэлемент ведет себя как обычный строчный элемент (не вызывая перевода строки до и после себя, в отличие от блочных элементов), но при этом содержимое этого элемента форматируется как внутри элемента блочного. Элементу же можно будет задать свойстваwidthиheight, что невозможно для элементов строчных
Проще, чем долго и путано объяснять, показать на примерах. Для наглядности подкрасим наши элементы и зададим им размеры и отступы
-
блочный элементеще блочный элементКак видите, каждый новый элемент располагается ниже следущего, даже если рядом с предыдущим есть место
- элемент со свойством
display: inline-blockэлемент со свойствомinline-blockэлемент со свойствомinline-blockиvertical-align: middle, в отличие от предыдущих с выравниванием по базовой строке — эти элементы находятся на одной строке, но при этом «слушаются» свойствwidthиheightи контент внутри них ведет себя как и в обычном блочном элементе. И они не теряют свойства строчных элементов выравниваться по высоте строки. Еще интересно, что переносятся эти элементы на новую строку целиком, в отличие от строчных элементов, которые «рвутся», если не помещаются на одной строке. - элемент со свойством
display: inlineеще строчный элемент — эти элементы простые строчные, и им не удастся задать размеры. И попытка вызвать перевод строки внутри элемента с помощьюBRприведет именно к переводу строки. элемент со свойствомdisplay: inline
иBR‘ом внутри

[...] вопрос: как кроссбраузерно реализовать свойство inline-block. Для этого воспользуюсь хаком для ИЕ 6 и 7 версий. Это [...]