Проблемы с разметкой jQuery и XHTML в IE7

Я снова вернулся с большим количеством проблем с версткой на моем развивающемся веб-сайте. Я могу добиться правильной анимации, позиционирования и результатов с помощью моего макета / заставки в каждом современном браузере (за исключением IE7 или более ранней версии).

У меня есть изображение в центре страницы, то есть text-align: center'd, и оно помещено в центр по вертикали с помощью div (#SPLASH_HEAD), установленного на 50% в верхней половине страницы. Анимация загрузки изменяет высоту #SPLASH_HEAD на 0 пикселей, чтобы перетащить изображение наверх (а затем выполнить другие действия).

В ie7 (или в режиме совместимости) кажется, что есть ошибка в jquery-1.4.2.min.js, строка 116 char 165 (что, как мне кажется, не имеет ничего общего с самим файлом jQuery). Заставка не центрируется по вертикали (#SPLASH_HEAD не регистрируется на 50% высоты окна) и не центрируется должным образом с помощью margin-left. Кроме того, ни один из других элементов не скрыт должным образом (с помощью .hide ()), поскольку ie7, похоже, не загружает весь мой jQuery / javascript.

вот ссылка: www.voidsync.com/test (было бы проще просмотреть источник на там)

Благодарность!


person abysslogic    schedule 19.03.2010    source источник
comment
Вы имели в виду исключить IE6 или старше?   -  person keithjgrant    schedule 19.03.2010
comment
Есть ли причина, по которой вы используете .livequery вместо jQuery .live? Я не уверен, связано ли это, но у меня были проблемы с использованием livequery w / 1.4+ (не знаю, связано ли это с IE), поэтому вместо этого я переключился на 1.3.2.   -  person nolabel    schedule 19.03.2010
comment
@keithjgrant - это не работает в IE7 и старше. @nolabel - я использую livequery, поскольку, насколько мне известно, у него больше возможностей, чем у .live (например, перехват ссылок привязки или запуск функций с загруженным контентом AJAX).   -  person abysslogic    schedule 20.03.2010


Ответы (1)


В строке 66 вашего jquery.js вы передаете значение «наследовать». IE иногда подходит под это значение.

$("#CONTAINER").css("height","inherit");

Попробуйте закомментировать эту строку. Затем обновите свою страницу в IE7. Если проблема не исчезнет, ​​измените значение на «авто» или «».

Если это не решит проблему, попробуйте вернуть дизайн в jquery 1.3.2. Буквально вчера я обнаружил ошибку в jquery, возможно, и у вас тоже. УДАЧИ!

person roydukkey    schedule 20.03.2010
comment
Мне нужно было передать значение, чтобы вернуть все элементы в их исходные начальные положения, если пользователь должен был щелкнуть обратно после загрузки заставки. Я создал исключение, чтобы установить высоту 100% в IE7 или старше и унаследовать от всех других браузеров, и теперь все работает. Спасибо! - person abysslogic; 24.03.2010