Как известно, IE не понимает CSS-свойства position: fixed. Чтобы заставить его вести себя, как нормальный браузер, нужно подставить костыль.
HTML:
<div id="fixed">Этот слой останется на месте</div>
CSS:
/* Для все браузеров */
#fixed {
position: fixed;
top: 0px;
left: 0px;
}
/* Для IE */
*html body {
background: url('null.gif') no-repeat;
background-attachment: fixed;
}
*html #fixed {
position: absolute;
top: expression(document.getElementsByTagName(
`body`)[0].scrollTop + "px");
}
Для Internet Explorer 7 есть более простое решение для работы свойства fixed — указание доктайпа.
Источник: https://www.kobzarev.com/programming/emulation-position-fixed-in-ie/