JavaScript Div, выходящее за пределы контейнера в IE7 ~ помощь!

StackOverflow https://stackoverflow.com/questions/6823193

Вопрос

У меня есть пустой див, называемый #lightpole, который имеет фоновое изображение Lightpole. Я запускаю сценарий, чтобы Lightpole расширил длину контейнера. Все выглядит хорошо в большинстве браузеров, за исключением IE 7. По какой -то причине я не могу понять, что Lightpole расширяется мимо нижнего колонтитула. Любые идеи?

Вот сайт - http://greenlight.mybigcommerce.com/

Вот JavaScript:

<script type="text/javascript" charset="utf-8" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" ></script>
$ (document) .ready (function () {var container_height = $ ('#container'). height (); $ ('#lightpole'). Height (container_height);});

Вот некоторые из CSS, связанных с DOVS:

#Container {
height:auto;
width: 1100px;
margin: 0 auto;
background-image:url(../images/containerBackground_2.png)!important; /*this is a hack for IE6 to choose between background images*/
background-image:url(../images/containerBackgroundIE6.png);
background-position: center top;
overflow:hidden;
clear:both;
}


#Outer {
clear: both;
height: auto;
margin: 0 0 0 15px;
overflow: hidden;
padding: 0;
width: auto;

}

#Wrapper {    
clear: both;
float: left;
height: auto;
margin:9px 0 0 43px;
min-height: 350px;/***added to keep footer from hitting light on nav light pole**/
padding: 0;
width: 990px;

}


#LayoutColumn1{
 float: left;
height: 100%;
margin-bottom: 0;
margin-right: 0;
margin-top: 0;
position: relative;
z-index: 88;
clear:both;
}

#lightPole {
background:url(../images/lightPole8aSlice.png);
margin: 0 0 0 19.9px;
/*min-height: 320px;*/
overflow: hidden;
padding: 0;
position: absolute;
width: 15px;
z-index: -100;
 display: inline-block;
float: left;
}

Обновление - может ли это быть вызвано неправильно закрытым DIV или поплавкой, не очищающимся?

Это было полезно?

Решение

Я столкнулся с предыдущей проблемой, которая была похожая, и это было связано с $ (document) .Ready (function () стрельбой перед загрузкой всех изображений. Попробуйте использовать $ (window) .load (function () {

Другие советы

Вы, кажется, загружаете 2 версии jQuery одновременно: jQuery 1.3.2 и 1.5.2. Хотя я еще не закрепил вашу проблему на это, вероятно, лучше всего удалить одну из них.

По моему опыту, у меня были изображения по -разному реагируют со следующими частями кода:

$('#myimage').height(200);

против

$('#myimage').attr('height',200);

Первый, тот, который вы используете, добавляет высоту в атрибут стиля, который, как вы обнаружили, хорошо работает в большинстве браузеров.

Второй устанавливает сам атрибут высоты и будет работать в большем количестве браузеров. У меня нет экземпляра IE7, но вы могли бы попробовать это.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top