Javascript-форум (https://javascript.ru/forum/)
-   (X)HTML/CSS (https://javascript.ru/forum/xhtml-html-css/)
-   -   Неподвижный блок (https://javascript.ru/forum/xhtml-html-css/1084-nepodvizhnyjj-blok.html)

snapik 11.03.2008 14:57

Неподвижный блок
 
Поставил на форум неподвижный блок путем добавления:
........
<style>
#block
{
width: 100px;
height: 100px;
padding-left: 10px;
padding-top: 12px;
position: fixed;
top: 0;
left: 0;
//position: absolute;
top: expression(
document.getElementsByTagName( 'body' )[0].scrollTop + "px"
);

}
</style>
</head>
<body>
<div id="block">тут блок
</div>
...............
Такой вариант работает во всех браузерах (создал отдельную страничку и проверил), но как только этот же код ставлю на форум punbb, он перестает работать в IE, когда в mozille и opere прекрано работает. Подскажите в чем проблема???????????????????

Андрей Параничев 11.03.2008 16:26

Странно, я думал expression работает наоборот, только в IE. Посмотрю попозже, может предложу более подходящее решение. Ведь expression выполняется при каждом событии - при движении мыши, нажатии, скролле и т.д, так что тут наверно рациональней поставить событие позиционирования на onScroll элемента body.

snapik 11.03.2008 16:36

Дело в том что этот код работает в IE, Mozilla, Opera когда на локалхосте создаю 1 страничку с этим кодом. А когда переношу этот же код на форум, в IE он отказывается работать. Видимо какое-то несоответствие стилей. Какие могут быть конфликты?

lancer 13.03.2008 15:03

Возьмите доктайп форума и поставьте в свою страничку и откройте в IE.
Уверен не будет работать точно также как и на форуме.

SelenIT 23.03.2008 00:52

Цитата:

Сообщение от Андрей Параничев (Сообщение 1479)
Странно, я думал expression работает наоборот, только в IE.

Так и есть. В других работает position:fixed без этой подпорки.

Цитата:

Сообщение от lancer (Сообщение 1514)
Возьмите доктайп форума и поставьте в свою страничку и откройте в IE.
Уверен не будет работать точно также как и на форуме.

Я того же мнения. Приведенный expression - для Quirks mode. При стандартном доктайпе, насколько я понимаю, нужно заменить 'body' на 'html' (он же document.documentElement).


Часовой пояс GMT +3, время: 12:30.