Отображение CSS: наследование в IE9

#css #internet-explorer-9

#css #internet-explorer-9

Вопрос:

Предположительно, IE9 поддерживает отображение: наследование должным образом, но, по-видимому, он не применяет отображение из встроенного родительского элемента, такого как тег span, к блочному элементу, такому как div, если свойство display не определено явно. Я создал jsfiddle, чтобы продемонстрировать это поведение:

http://jsfiddle.net/LGre9/5/

Сравните разницу в IE9 и Chrome или Firefox. Если я проверю элементы в IE9, я увижу, что IE9 считает, что он применяет «встроенный», но, очевидно, это не так. Это похоже на ошибку IE9. К сожалению, в проблеме, которую я пытаюсь исправить, указание display:inline явно для этих элементов не является жизнеспособным решением. Есть ли что-то, что я упустил из виду, или что-то, что я могу сделать, чтобы заставить браузер вести себя как другие браузеры?

Комментарии:

1. можете ли вы явно применить inline к диапазону, потому что IE9 тогда реагирует на inherit стиль. Или это тоже не вариант?

Ответ №1:

Это похоже на ошибку IE9.

Я согласен.

К сожалению, в проблеме, которую я пытаюсь исправить, указание display:inline явно для этих элементов не является жизнеспособным решением.

Добавление span { display: inline } в начале вашей таблицы стилей решает проблему, и я не понимаю, почему добавление этого не является жизнеспособным решением. Это не имеет никакого значения в любом другом браузере.

Комментарии:

1. Это работает и будет работать и для меня. Я работаю над проектом с очень большой кодовой базой, где я не был уверен, смогу ли я внести изменения в нужное место, но оказывается, что я могу.