2010-04-21 3 views
1

данной страницы находится здесь: http://supportdogs.digitalportals.net/PhotoGallery/16-Eventsпоплавков толкают вниз в IE8, но не IE7 или Firefox

Вы можете увидеть в IE8, что содержание выталкивается вниз под боковую панель. Если вы просматриваете его в режиме совместимости с IE8, этого не происходит, и это не происходит в Firefox. Если вы перейдете на другую страницу в IE8, проблема не сохранится.

Основной макет

<div class="contentContainer"> 
    <div class="left"></div> 
    <div class="right"></div> 
</div> 

CSS-код для этих трех классов здесь

#contentContainer { 
background: transparent url('../images/bodyBG.png') repeat-y center top; 
clear: both; 
padding: 0px 30px 0px 30px; 
margin-top: 83px; 
width: 935px; 
} 

#contentContainer .left { 
float: left; 
margin-top: 60px; 
padding-left: 5px; 
width: 195px; 
} 

#contentContainer .right { 
float: right; 
margin: -55px 0px 20px 0px; 
min-height: 620px; 
width: 700px; 
} 

Кто-нибудь есть какие-либо идеи, что может быть причиной этого?

ответ

1

у вас есть (PayPal) форма вложенный внутри другой формы (aspnetForm); это недопустимый HTML. IE8 анализирует страницу так, как если бы внутренний тег </form > закрыл внешнюю форму, в результате чего макет разбился.

В IE8 вы можете открыть инструменты для разработчиков (Инструменты> Инструменты разработчика), чтобы открыть Firebug-представление о том, как IE анализирует вашу страницу.

+0

Спасибо. Я понятия не имел, что для IE8 доступны инструменты для разработчиков. Это была проблема. Поскольку страницы фотоальбома и страницы календаря динамически генерируются .NET, нам придется заглянуть в ajaxing этих страниц, чтобы мы могли удалить тэг .NET. – BReno

0

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

0

Я предполагаю, что проблема в том, что ясно: и у вас есть на #contentContainer. Всякий раз, когда вы «очищаете: оба» что-то, предполагается, что он упадет после того, как все содержимое будет размещено на одной строке. Я думаю, причина в том, что он действует немного неправильно, потому что ваши плавающие DIVs являются дочерними элементами #contentContainer (не на одной строке).

Если беспокоишься о высоте #contentContainer не расширяются, вы должны поместить еще один элемент после ваших плавающих элементов с ясно: как, или вы можете проверить эту статью: http://www.webtoolkit.info/css-clearfix.html

0

Хотя это не решение, вы можете вставить этот бит кода в голову, чтобы IE8 работал как IE7.

< META HTTP-эквив = "X-UA-Compatible" содержание = "IE = EmulateIE7" />

Смежные вопросы