Современные версии IE (7+) имеют разные механизмы рендеринга и выбирают их механизм рендеринга на основе предпочтений пользователя и типа документа страницы. Таким образом, ваша проблема, вероятно, заключается в том, что любой используемый по умолчанию движок рендеринга IE использует при тестировании вашей страницы (возможно, в режиме совместимости) либо имеет ошибку рендеринга, либо выставляет ошибку в вашей разметке, которая приводит к неправильной визуализации z-индекса. Когда вы добавляете doctype, IE меняет свой движок рендеринга, и ошибка в старом движке рендеринга или ваш код исчезают, поэтому ваш z-index рендерится просто отлично.
Есть два способа исправить это:
- Вы можете попытаться настроить разметку, чтобы z-index отображался правильно в обоих механизмах рендеринга. Это может быть много работы.
- Вы можете всегда указывать тип документа. Это лучшая практика, и вы всегда должны это делать.