Старые версии IE не понимают inline-block
для элементов уровня блока.
Причина, по которой inline-block
работает для встроенных элементов, заключается в том, что они сделали это, и это вызывает hasLayout
. А макет для встроенных элементов работает точно как inline-block
.
Итак, чтобы заставить inline-block
работать с элементами уровня блока, сделать их встроенными и каким-то образом вызвать hasLayout
, например, используя zoom: 1
.
Итак, для вашего кода есть два способа: изменить div
s на span
s, или добавить встроенные хаки (или переместить код во внешние таблицы стилей и использовать условные комментарии). Версия со встроенными хаки выглядела бы так:
<div style='width: 200px; border: 1px solid black;'>
<div style='display: inline-block; width: 70px; border: 1px solid green;*display:inline;zoom:1;'>
asdfasdf<br />asdf
</div>
<div style='display: inline-block; width: 70px; border: 1px solid green;*display:inline;zoom:1;'>
asdfasdf<br />were
</div>
</div>