Иногда возникает необходимость расположить в ряд несколько элементов с заданными размерами. Строчные элементы для этого не подходят, т.к. не воспринимают размеры. Блочные элементы тоже не подходят, т.к. до и после них существует перенос строки.
Особенности inline-block
ов:
- Им можно задавать размеры, рамки и отступы, как и блочным элементам;
- Их ширина по умолчанию зависит от содержания, а не растягивается на всю ширину контейнера;
- Они не порождают принудительных переносов строк, поэтому могут располагаться на одной строке, пока помещаются в родительский контейнер;
- Элементы в одной строке выравниваются вертикально подобно строчным элементам (
vertical-align
).
От строчных элементов им достались следующие черты:
- по ширине они ужимаются под своё содержимое;
- могут располагаться в одну строку;
- реагируют на вертикальное выравнивание,
vertical-align
; - реагируют на горизонтальное выравнивание,
text-align
, заданное у родителя.
От блочных:
- им можно задавать размеры с помощью
width
иheight
; - можно задавать внешние и внутренние отступы и рамки, которые работают во всех направлениях и увеличивают размер элемента.