IE6 меня всегда удивляет, но этот ДЕЙСТВИТЕЛЬНО странный.
Я создаю горизонтальное меню, где мне нужно, чтобы текст в каждой «кнопке» располагался по центру. Легко в любом браузере, кроме IE. Поэтому для браузеров IE я использую немного javascript, чтобы добавить необходимые отступы к каждой кнопке, чтобы текст отображался по центру.
У меня это отлично работает в IE8 и IE7. IE6 просто по какой-то причине не делал этого правильно.
Итак, я добавил ALERT прямо перед строкой, которая добавляет заполнение:
$menuTriggerUL.children('li').each(function(i){
var heightDifference = tallestTab-tabTextHeight[i];
if (heightDifference < 0){heightDifference=0};
alert(heightDifference);
$(this).children('a:first').css("padding-top", Math.floor(heightDifference/2) );
});
С этим предупреждением IE6 будет по одному применять правильные отступы к каждому элементу должным образом.
Если я уберу предупреждение, оно возится и получает правильное первое, но натыкается на последующие.
Кажется, что jQuery пытается работать быстрее, чем IE6 может с этим справиться. Очевидно, что это, вероятно, не то, что происходит, но я не уверен, как еще описать это.
Некоторые вещи, которые могут быть частью проблемы: я использую функцию jQuery each () и, внутри, собираю значения из предыдущего заполненного массива.
Какие-либо теории относительно того, что может происходить?
ОБНОВЛЕНИЕ: ответ Джуршмана ниже был решением. Я хотел бы узнать больше об этой проблеме, и если у людей есть некоторые идеи относительно того, какие сценарии могут вызвать эту проблему для IE6. Я никогда не сталкивался с этим, но рад иметь исправление в наборе инструментов для будущего использования.