![]() | Андрей Шитов
Полноценный fixed в MSIE 26 марта 2007 |
![]() | Задача. | Показать то, чего не хватает способам эмуляции CSS-правила position: fixed. | ![]() |
![]() | ![]() |
О том, какой код нужно написать для MSIE в стилях страницы, чтобы сделать блок с фиксированной позицией, давно известно. Технологи студии пользуются разными способами решения этой задачи — каждый своим любимым.
top: expression(document.body.scrollTop + "px"); Но такой простейший вариант не работает,
top: expression( eval(document.body.scrollTop) + "px" );
top: expression( document.getElementsByTagName("body")[0].scrollTop + "px" );
top: expression( parseInt(document.body.scrollTop, 10) + "px" ); | См. заметку «Фиксирование элемента в окне IE» |
Этот блок остается на месте при вертикальной прокрутке и
в MSIE.
Решение, придуманное Ромой Воронежским и Юрой Васильчиковым, непостижимо и просто — чтобы избавиться от дрожаний, нужно зафиксировать фон страницы: body { background: url('/n.gif') no-repeat; background-attachment: fixed; } Файл n.gif — однопиксельная прозрачная картинка (ее, кстати, даже не обязательно держать на сервере). Показанный прием одинаково хорошо работает в браузерах MSIE уже начиная с пятой версии. Примечание. Нужно лишь помнить, что для MSIE 7 есть более простое решение для правильной работы свойства fixed — указание доктайпа. |
© 19952023 Студия Артемия Лебедева
|