![]() |
Модераторы: Sardar, Aliance |
![]() ![]() ![]() |
|
mielnir |
|
|||
Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 28.6.2006 Репутация: нет Всего: нет |
Создавал тему в Верстке, но, похоже, надо было здесь. В общем чем суть проблемы. Есть блок( внутри него у меня навигация ), как сделать так, чтобы при пролитывании страницы этот блок тоже двигался. В FF и Опере это - position: fixed, в IE такое не работает. Может, есть какой-то скрипт, решающий задачу?
|
|||
|
||||
AKS |
|
|||
Участник форума ![]() ![]() Профиль Группа: Участник Сообщений: 725 Регистрация: 20.9.2006 Репутация: 27 Всего: 52 |
Подключите данный .htc, указав его адрес в значении св-ва CSS behavior:
P.S. Забыл добавить, что поведение фиксированного таким образом блока будет немного отличаться от поведения блока "fixed". Надеюсь на комментарии по поводу работы данного сценария... Это сообщение отредактировал(а) AKS - 26.1.2007, 18:33 |
|||
|
||||
mielnir |
|
|||
Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 28.6.2006 Репутация: нет Всего: нет |
AKS, не могли бы Вы поподробнее про установку/использование - с JS у меня пока туговато )))
Это сообщение отредактировал(а) mielnir - 26.1.2007, 18:51 |
|||
|
||||
AKS |
|
|||
Участник форума ![]() ![]() Профиль Группа: Участник Сообщений: 725 Регистрация: 20.9.2006 Репутация: 27 Всего: 52 |
mielnir
Этот код Вам нужно сохранить в файле с расширением .htc. Затем в таблице стилей для блока, которому Вы указываете position:fixed, надо добавить еще одно правило - behavior:url([путь к файлу].htc). На всякий случай, справочная информация "из первых рук" вот здесь. |
|||
|
||||
Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Возможно более элегантное решение.
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
AKS |
|
|||
Участник форума ![]() ![]() Профиль Группа: Участник Сообщений: 725 Регистрация: 20.9.2006 Репутация: 27 Всего: 52 |
Sardar, mielnir, не "возможно", а действительно - по ссылке выше лежит решение, которое "более" в любом отношении.
Господи, сколько времени я потратил напрасно на написание своего .htc! Приговор - "в мусор мою писанину"! |
|||
|
||||
mielnir |
|
|||
Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 28.6.2006 Репутация: нет Всего: нет |
AKS, все отлично )) Гляньте подпись Sardar'a.
А за код всем спасибо. Все работает )) |
|||
|
||||
AKS |
|
||||||||
Участник форума ![]() ![]() Профиль Группа: Участник Сообщений: 725 Регистрация: 20.9.2006 Репутация: 27 Всего: 52 |
Действительно, все отлично (я просто "огласил приговор" своему варианту, чтобы всем было ясно - он не пригоден для использования ;) )! Сегодня, "побаловавшись" с этой темой, написал кое-что поинтересней. Конечно же я отказался от использования обработчиков событий onscroll&onresize в пользу метода setExpression (пускай браузер сам "разруливает" позиционирование ;) ). Но для того, чтобы избежать длинных-предлинных выражений в таблице стилей, я не стал отказываться от применения behavior. Думаю, что достаточно сравнить описание стиля элемента, которое использует г-н Mark "Tarquin" Wilton-Jones (и это только одно выражение св-ва left):
вот с такой записью:
и будет понятно, что второй вариант проще. Очевидно также, что он удобен еще и тем, что нет нужды писать кроссбраузерный стиль, используя условные комментарии и селекторы, не поддерживаемые IE. Пишется одно правило для всех браузеров. Кроме того, в моем варианте не используются ненужные глобальные переменные (ignoreMe&ignoreMe2) - вместо них создается дополнительная функция. Вот код из файла position-fixed.htc:
Надеюсь на комментарии, которые могут помочь исправить то, что возможно было упущено... |
||||||||
|
|||||||||
![]() ![]() ![]() |
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |